【问题标题】:python pypyodbc won't select datapython pypyodbc 不会选择数据
【发布时间】:2019-12-18 14:01:56
【问题描述】:

我想我又要在这里发疯了... :)。我正在尝试做这个星球上最简单的事情,但由于某种我不知道的原因它不起作用。我有一个 python 脚本,它使用 pypyodbc 连接到 mssql 数据库并做一些事情。当我将数据插入数据库时​​,它可以工作。当我尝试提取它时,它失败了。我做错了什么?

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 失败等等......

有什么想法吗?

【问题讨论】:

    标签: python sql-server select odbc


    【解决方案1】:

    基本上,我有一段代码可以用另一个连接重写 srcCursor 变量,显然这种关系不会出现在另一个服务器上。道歉!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多