【问题标题】:Pyodbc not showing any drivers as installedPyodbc 未显示已安装的任何驱动程序
【发布时间】:2020-11-16 03:00:58
【问题描述】:

希望有人可以在这里指出正确的方向。

我有一个在我的 Windows PC 上开发的 python 程序。一切都很好。但是,我需要将其迁移到服务器/Xubuntu VM,并且它不再连接到数据库。我知道这是我配置的驱动程序名称的问题,因为我过去可以通过查看 pyodbc.drivers() 可用的驱动程序来连接它。

Python 版本是 3.7.5。在 pipenv 虚拟环境中运行。已安装所有依赖项。 Windows中的相同配置,它可以工作。 POSTGRESQL 与 pgadmin4 一起在本地安装。

import pyodbc

print(pyodbc.drivers())

返回 'pyodbc' 没有属性驱动程序

print(pyodbc.version)

还返回 'pyodbc' 没有属性版本。

odbcinst -j

返回以下内容:

unixODBC 2.3.6
DRIVERS..........: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini

但是 cat/nano /etc/odbcinst.ini 没有显示任何内容,就像文件为空一样。

我只需要知道安装的用于 pyodbc 连接的 ODBC 驱动程序的名称!

【问题讨论】:

  • “我只需要知道 ODBC 驱动程序的名称” - 如果您收到 AttributeError: module 'pyodbc' has no attribute 'version',那么您的问题远不止于此;您的 pyodbc 安装已损坏。
  • 你说得对,我认为这是 python 版本的问题。该程序是在 3.7 的 pipenv 中编写的,但正在迁移到的服务器正在运行 3.8。每次我尝试回滚服务器上运行的 Python 版本时,它都会破坏 pip、pipenv 等。

标签: python python-3.x odbc pyodbc


【解决方案1】:

我最终删除并重新安装了 pyodbc,然后安装了 odbc-postgresql,这解决了我的问题:

apt-get install odbc-postgresql

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 1970-01-01
    • 2020-07-24
    • 2013-01-18
    • 2019-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多