我很难用Linux机器(Ubuntu 16.04)中的pyodbc
连接到SQL Server。
conn = pyodbc.connect(r'DRIVER={FreeTDS};PORT=**; SERVER=**; DATABASE=**;UID=AA;PWD=hfghj;')
curr = conn.cursor()
curr.fast_executemany = True
query = "INSERT INTO dbo.STG_CONTACTABILITY_SCORE VALUES (?" + ",?"*21 + ")"
sql_data = list(map(tuple, i.values))
curr.executemany(query, sql_data)
我收到以下错误:
('HY004','[HY004] [FreeTDS] [SQL Server]无效的数据类型(0) (的SQLBindParameter)')
当我将连接字符串更改为:
时,我的Windows笔记本电脑可以使用相同的插入查询conn = pyodbc.connect(r'DRIVER={SQL Server};PORT=**; SERVER=**; DATABASE=**; UID=AA; PWD=hfghj;')
如果我在Linux计算机上将Driver
从FreeTDS
更改为SQL SERVER
我收到以下错误:
pyodbc.Error:('01000',“[01000] [unixODBC] [Driver Manager]无法打开 lib'SQL Server':找不到文件(0)(SQLDriverConnect)“)
我搜索了答案,但没有太多可以解决我的问题。 从Linux机器连接到SQL SERVER的驱动程序是什么?
答案 0 :(得分:0)
从Linux机器连接到SQL SERVER的驱动程序是什么?
如果您按照
中的说明安装Microsoft的ODBC驱动程序Installing the Microsoft ODBC Driver for SQL Server on Linux and macOS
然后您可以使用DRIVER=ODBC Driver 17 for SQL Server
或DRIVER=ODBC Driver 13 for SQL Server
,具体取决于您选择的版本。