ver.2 PyGreSQL ERROR: from _pg import * ImportError: DLL load failed: The specified module could not be found
ver.2 PyGreSQL ERROR: from _pg import * ImportError: DLL load failed: The specified module could not be found
我遇到了和 here 讨论过的相同问题,但我没有资格评论答案,所以我提出了新问题。
我在 PATH 中有 libpq.dll (C:\PostgreSql\lib) 的路径,但它没有解决这个问题。
使用 Python 2.7.9 32 位,PostgreSQL 8.4,Win 8
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
import pg
File "C:\Python27\lib\site-packages\pg.py", line 21, in <module>
from _pg import *
ImportError: DLL load failed: The specified module could not be found.
我在 Win 8
上也遇到了同样的问题。我第一次在 "C:\Program Files" 中安装了 PostgreSQL
并且还设置了环境 PATH
以指向 PostgreSQL 文件夹。我怀疑 "C:\Program Files" 文件夹的权限问题。
我按照下面提到的步骤解决了这个问题。
- 已卸载 PostgreSQL
- 在 "C:\PostgreSQL" 中重新安装了 PostgreSQL
请注意,这次我没有将 PostgreSQL 安装到 "C:\Program Files" 文件夹中
- 设置环境
PATH
C:\PostgreSQL.4;C:\PostgreSQL.4\bin
- 还要确保
_pg.pyd
存在于 C:\Python27\Lib\site-packages
我遇到了同样的问题;只是为了在做你说的之前尝试我的机会,我改变了 PATH 环境变量:我直接指定了 libpq.dll OF THE ODBC DRIVER OF PostgreSQL 的整个目录路径(还有其他 "libpqdll"s 以及其他相关目录)发生在我的 Windows10 此处:C:\Program Files\PostgreSQL\psqlODBC\bin .. 问题解决了.. 之前,我的 PATH 规范是 C:\Program Files\PostgreSQL 和我认为驱动程序直接在此处查找 dll 文件,或者 1) 无法直接在此特定目录中找到(通过忽略子目录),2) 或者遇到其他对驱动程序不起作用的 "libpq.dll"s,它给出了错误信息.. 所以我得出的结论是它在 PATH env.varible 中寻找 ODBC 驱动程序的 dll 文件,所以我需要在 PATH 环境变量中直接指定 PostgreSQL 的 ODBC 驱动程序的目录我用过 psqlODBC .. 为了将来的需要我想写下那些细节:)
我在 Win10 上遇到了同样的错误 Python 3.5 和 Python 3.8,都是 64 位,Postresql 12,也是 64 位。 DLL 位置“c:\Program Files\PostgreSQL\bin”和“c:\Program Files\PostgreSQL\psqlODBC\bin”已添加到 PATH 但它导致了另一个错误:
- "from _pg import * ImportError: DLL 加载失败: 操作系统无法 运行 %1."
然后我检查了 Sysinternals 的 Process Monitor 发生了什么,发现 libpg.dll 正在寻找其他 DLL。最后,以下文件:
- libpq.dll
- libssl-1_1-x64.dll
- libcrypto-1_1-x64.dll
已从“c:\Program Files\PostgreSQL\bin”文件夹复制到:
- "c:\用户...\AppData\Local\Programs\Python\Python35"
- "c:\用户...\AppData\Local\Programs\Python\Python38"
文件夹和现在“导入 pg”在两个版本的 Python 中都可以正常工作。
我遇到了和 here 讨论过的相同问题,但我没有资格评论答案,所以我提出了新问题。
我在 PATH 中有 libpq.dll (C:\PostgreSql\lib) 的路径,但它没有解决这个问题。
使用 Python 2.7.9 32 位,PostgreSQL 8.4,Win 8
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
import pg
File "C:\Python27\lib\site-packages\pg.py", line 21, in <module>
from _pg import *
ImportError: DLL load failed: The specified module could not be found.
我在 Win 8
上也遇到了同样的问题。我第一次在 "C:\Program Files" 中安装了 PostgreSQL
并且还设置了环境 PATH
以指向 PostgreSQL 文件夹。我怀疑 "C:\Program Files" 文件夹的权限问题。
我按照下面提到的步骤解决了这个问题。
- 已卸载 PostgreSQL
- 在 "C:\PostgreSQL" 中重新安装了 PostgreSQL 请注意,这次我没有将 PostgreSQL 安装到 "C:\Program Files" 文件夹中
- 设置环境
PATH
C:\PostgreSQL.4;C:\PostgreSQL.4\bin
- 还要确保
_pg.pyd
存在于C:\Python27\Lib\site-packages
我遇到了同样的问题;只是为了在做你说的之前尝试我的机会,我改变了 PATH 环境变量:我直接指定了 libpq.dll OF THE ODBC DRIVER OF PostgreSQL 的整个目录路径(还有其他 "libpqdll"s 以及其他相关目录)发生在我的 Windows10 此处:C:\Program Files\PostgreSQL\psqlODBC\bin .. 问题解决了.. 之前,我的 PATH 规范是 C:\Program Files\PostgreSQL 和我认为驱动程序直接在此处查找 dll 文件,或者 1) 无法直接在此特定目录中找到(通过忽略子目录),2) 或者遇到其他对驱动程序不起作用的 "libpq.dll"s,它给出了错误信息.. 所以我得出的结论是它在 PATH env.varible 中寻找 ODBC 驱动程序的 dll 文件,所以我需要在 PATH 环境变量中直接指定 PostgreSQL 的 ODBC 驱动程序的目录我用过 psqlODBC .. 为了将来的需要我想写下那些细节:)
我在 Win10 上遇到了同样的错误 Python 3.5 和 Python 3.8,都是 64 位,Postresql 12,也是 64 位。 DLL 位置“c:\Program Files\PostgreSQL\bin”和“c:\Program Files\PostgreSQL\psqlODBC\bin”已添加到 PATH 但它导致了另一个错误:
- "from _pg import * ImportError: DLL 加载失败: 操作系统无法 运行 %1."
然后我检查了 Sysinternals 的 Process Monitor 发生了什么,发现 libpg.dll 正在寻找其他 DLL。最后,以下文件:
- libpq.dll
- libssl-1_1-x64.dll
- libcrypto-1_1-x64.dll
已从“c:\Program Files\PostgreSQL\bin”文件夹复制到:
- "c:\用户...\AppData\Local\Programs\Python\Python35"
- "c:\用户...\AppData\Local\Programs\Python\Python38"
文件夹和现在“导入 pg”在两个版本的 Python 中都可以正常工作。