我无法让Python Turbodbc连接到Sql Server表(看起来很简单)来读取或写入用户表。但是,我已经建立了ODBC连接,并且可以从中打印对象列表。
from turbodbc import connect, make_options
options = make_options(prefer_unicode=True)
connection = connect(dsn='FPA', turbodbc_options=options)
cursor = connection.cursor()
cursor.execute('''SELECT * FROM sys.objects WHERE schema_id = SCHEMA_ID('dbo');''')
cursor.execute('''SELECT * from [dbo].[Kits_Rec];''')
来自#2消息:[Microsoft] [SQL Server的ODBC驱动程序17] [SQL Server]无效的对象名称'dbo.Kits_Rec'。
答案 0 :(得分:0)
SQL Server包含多个数据库,您的dsn“ FPA”可能未指定数据库名称,因此您正在连接到主数据库,而不是包含Kits_Rec表的数据库。
修复该dsn条目以指定正确的数据库,或改用以下语法:
connection = connect(driver="MSSQL Driver",
server="hostname",
port="1433",
database="myDataBase",
uid="myUsername",
pwd="myPassword")