【问题标题】:Error with linux pyodbc connection "Can't open lib 'SQL Server Native Client11.0'"linux pyodbc 连接出错“无法打开 lib 'SQL Server Native Client11.0'”
【发布时间】:2019-04-30 23:07:51
【问题描述】:

我在尝试使用 linux 容器环境中的 python 连接到 SQL 数据库时遇到问题。当 pyodbc 尝试通过查找驱动程序连接 SQL 时,我遇到了以下错误。

sqlalchemy.exc.DBAPIError: (pyodbc.Error) ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server Native Client11.0' : file not found (0) (SQLDriverConnect)")

查看后,pyodbc 似乎找不到以下内容:

odbcinst -j
unixODBC 2.3.7
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/gtx914/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

当我仔细检查时,这些 .ini 文件在我的 linux 环境中不存在。我不确定为什么 pip install pyodbc 和 uixodbc 没有安装正确的依赖项来找到驱动程序。这里有人知道解决方法吗?需要注意的是,我无法使用任何 sudo 命令,因为我在此环境中没有 root 访问权限。

【问题讨论】:

    标签: python sql sql-server linux


    【解决方案1】:

    ODBC 驱动程序本身 不是 pip 可安装的。您需要按照此处的说明使用 apt-get(或类似方法)将其安装到您的操作系统或容器中:

    Installing the Microsoft ODBC Driver for SQL Server on Linux and macOS

    【讨论】:

      猜你喜欢
      • 2020-04-24
      • 1970-01-01
      • 2011-04-25
      • 2015-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多