我想我又要发疯了... :)。我正在尝试做地球上最简单的事情,由于某些我不知道的原因,它不起作用。我有一个使用pypyodbc连接到mssql数据库并执行操作的python脚本。当我将数据插入数据库时,它可以工作。当我尝试提取它时,它失败了。我在做什么错了?
import pypyodbc as mssql
msConnErr = None
try:
msconn = mssql.connect('DRIVER={SQL Server};SERVER=server_name;DATABASE=database;TRUSTED_CONNECTION=True')
print('Source server connected')
srcCursor = msconn.cursor()
except:
print('Source server error')
msConnErr = True
srcCursor.execute("SELECT * FROM schema.table")
srcResult = srcCursor.fetchall()
print(srcResult)
连接正常,因为收到了一条成功消息。我还可以看到使用sql server management studio的脚本已连接到正确的数据库,因此我知道我在正确的环境中工作。我得到的错误是:
UndefinedTable: relation "schema.table" does not exist
LINE 1: SELECT * FROM schema.table
该表存在,我必须指定模式,因为我在不同模式(数据生命周期)中具有相同的表名。我可以使用sql server management studio从中提取数据,但是python失败了。它不会使用相同的驱动程序在其中插入3500万行。没有其他查询有效,即使SELECT @@ VERSION失败,SELECT TOP(10)* FROM schema.table失败等等。...
有什么想法吗?
答案 0 :(得分:0)
基本上,我有一段代码可以用另一个连接重写srcCursor变量,显然该关系不会在另一个服务器上出现。道歉!