我尝试在Windows上使用pypyodbc1.3.3和python3.5从microsoftsql数据库中检索数据,但是得到了一个pypyodbc.ProgrammingError.编程错误“[24000][Microsoft][SQL Server Native Client 11.0]游标状态无效”,使用以下代码:
import pypyodbc
conn = pypyodbc.connect(r'DRIVER={SQL Server Native Client 11.0};SERVER=server;DATABASE=database;UID=uid;PWD=pwd')
cursor = conn.cursor()
sql = '''USE database;
SELECT R0
FROM table;'''
cursor.execute(sql)
results = cursor.fetchone()
print(results)
SQL在microsoftsqlservermanagementstudio中工作,连接和执行在我编写的另一个脚本中工作,以便插入到同一个数据库中,如果我删除它也可以工作
^{pr2}$到目前为止我试过了游标.fetchone(), 游标.fetchall()和list(cursor)但是都产生了相同的结果,这让我相信命令本身不是问题所在。 根据this microsoft site这意味着没有一个打开的游标,但是我可以得到它的描述,所以根据我的理解,必须有一个。在
根本不是不能执行
USE ...
语句,而是不能作为多语句批处理的一部分来执行。所以,这行不通。。。在。。。但这会很好的
^{pr2}$(使用pypyodbc 1.3.4和pyodbc 4.0.21进行测试)
我也有类似的问题。我可以通过删除“usedatabase”语句来解决这个问题。在
你已经在这里连接到你的数据库:
相关问题 更多 >
编程相关推荐