conn = pyodbc.connect(r'DRIVER={SQL Server Native Client 11.0};SERVER=localhost\<redacted>;DATABASE=master;UID=<redacted>;PWD=<redacted>')
cursor = conn.cursor()
query = """SELECT <redacted> FROM <redacted> WHERE <redacted>"""
row = cursor.execute(query).fetchone()
dummyName = row[0]
cursor.close()
cursor = conn.cursor()
query = """SELECT <redacted> FROM <redacted> WHERE <redacted>"""
print query
row = cursor.execute(query)
print row.fetchone()
此代码正确连接到数据库,并在第一个数据库上执行第一个查询。但是,当它在另一个数据库上执行第二个查询时,它不返回任何数据,并且我弹出一个窗口,说当我尝试获取任何行时python.exe已经停止工作,之后程序崩溃。我检查了一下,然后尝试执行的查询是一个有效的查询,可以从主数据库和代码中连接的同一帐户正常运行。
答案 0 :(得分:0)
问题是我们正在使用旧版本的pyodbc。我将其更新为新版本,现在可以正常使用。