大家好,我有一个问题,需要帮助 这是我的环境
spark 3.2
hive 2.3.9
and delta-core: 2.0.0
Simba 2.7
我正在尝试使用 Spark thrift 通过 odbc 服务来运行一些 sql 请求
pyodbc
,以获取以增量格式存储在 azure blob 存储中的数据。
当我使用
创建表格时import pyodbc
conn = pyodbc.connect(con_str)
cs = conn.cursor()
cs.execute("create table test_tb (id INT)")
表是在默认数据库中创建的,我可以使用
select * from default.test_tb
进入它
当我跑步时
cs.execute("create database test_db")
cs.execute("create table test_db.mytab")
db 和表已创建并在 azure blob 存储中可见,但是当我运行时
cs.execute("select * table test_db.mytab")
我收到此错误:
pyodbc.ProgrammingError: ('42S02', '[42S02] [Simba][SQLEngine] (31740) Table or view not found: .test_db.mytab (31740) (SQLExecDirectW)')
如何解决这个错误
谢谢你
我认为您需要在调用
cs.commit()
方法后调用 cs.execute(<query>)
才能在数据库中进行更改。之后,您可以对数据库/表执行select
查询
cs.execute("create database test_db")
cs.execute("create table test_db.mytab")
cs.commit()
cs.execute("select * table test_db.mytab")