到目前为止,我们仍然使用Python 2.7,现在我正在将脚本迁移到Python 3.7。两个Python版本都是32位的。我们使用一个到psqlodbc驱动程序的odbc连接,它适用于我的Python 2.7安装,但不适用于Python 3.7。
不幸的是,我的错误是德语,但它基本上说它找不到程序,因此没有加载驱动程序:
dbi.opError: Aufgrund des Systemfehlers 127: Die angegebene Prozedur wurde nicht gefunden. (PostgreSQL ANSI, C:Program Files (x86)psqlODBC1300binpsqlodbc30a.dll) konnte der angegebene Treiber nicht geladen werden. in LOGIN
这是我的代码,适用于python 2.7(我将一些公司信息更改为***(
import odbc
constr = (
"DRIVER={PostgreSQL ANSI};"
"SERVER=sr05789.sr.***.ch;"
"PORT=5432;"
"DATABASE=tcd;"
"UID=***;"
"PWD=***;"
)
con = odbc.odbc(constr)
cur = con.cursor()
我也试过用pyodbc,但同样的故事。这里的问题在哪里?这是同一个代码和同一个笔记本。唯一的区别是Python的版本(但如前所述,两者都是32位(。
我自己解决了,但仍然不明白为什么:(
因此,解决方案是安装另一个Python 32位版本。我学习了Python 3.9.6,现在它可以工作了。
(首先,我再次卸载并安装了Python 3.7,但这没有帮助(