当我尝试使用pyodbc连接到SQL Server数据库(在Mac上)时:
我遇到了以下错误:
错误:('01000',“[01000] [unixODBC] [驱动程序管理器]无法打开库'ODBC Driver 13 for SQL Server':找不到文件(0)(SQLDriverConnect)”)
当我使用实际驱动程序位置时:
import pyodbc
server = '####'
database = '####'
username = '####@####'
password = '#####'
driver='{ODBC Driver 13 for SQL Server}'
pyodbc.connect('DRIVER='+driver+';SERVER='+server+';PORT=1443;DATABASE='+database+';UID='+username+';PWD='+password)
我遇到了以下错误:
错误:('01000',“[01000] [unixODBC] [驱动程序管理器]无法打开库'ODBC Driver 13 for SQL Server':找不到文件(0)(SQLDriverConnect)”)
当我使用实际驱动程序位置时:
driver='/usr/local/lib/libmsodbcsql.13.dylib'
它开始工作了!
我的 odbcinst.ini
文件看起来像这样:
[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/usr/local/lib/libmsodbcsql.13.dylib
UsageCount=1
我怎样才能让我的引用driver='{ODBC Driver 13 for SQL Server}'
重新工作呢?
我最开始使用这篇指南来安装驱动程序。如果有帮助的话,我是在Mac Sierra上使用Anaconda。
/etc
中搜索odbc.ini
和odbcinst.ini
。它还会检查用户的主目录下是否存在.odbc.ini
和.odbcinst.ini
。(顺便说一句,FreeTDS也会在freetds.conf
/.freetds.conf
中执行相同的操作。) - FlipperPA$ cat /etc/odbcinst.ini [ODBC Driver 17 for SQL Server] Description=Microsoft ODBC Driver 17 for SQL Server Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-17.0.so.1.1 UsageCount=1
然后更新脚本内容以使用新驱动程序。在这种情况下,驱动程序从版本13更新到版本17。我建议您添加此信息以完整性。 - earnshae