import pyodbc
sql = 'CREATE TABLE TestTable (TestID int, TestDate datetime)'
con = pyodbc.connect(SQL Data WareHouse)
con.execute(sql)
con.commit()
con.close()
我收到了以下错误:
Traceback (most recent call last):
File "sqlTest.py", line 24, in <module>
con.execute(sql)
pyodbc.ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]111212;Operation cannot be performed within a transaction. (111212) (SQLExecDirectW)')
我检查过上面的代码我可以使用INSERT
和DELETE
查询,但我无法使用CREATE
和TRUNCATE
查询。我也通过使用SSMS检查了CREATE
和TRUNCATE
的权限。
是否可以在Azure SQL Data WareHouse中使用pyodbc创建表?
答案 0 :(得分:3)
我可以使用自动提交使用CREATE
和TRUNCATE
查询。以下代码工作正常。
import pyodbc
sql = 'CREATE TABLE TestTable (TestID int, TestDate datetime)'
con = pyodbc.connect(SQL Data WareHouse)
con.autocommit = True
con.execute(sql)
con.close()