PostgreSQL无法创建plpythonu扩展

2024-06-28 14:35:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在Windows上用PostgreSQL编写一个函数,其主体中有一个Python脚本,在尝试创建plpythonu扩展时遇到了一条错误消息。我运行的命令是:

CREATE EXTENSION plpythonu;

将生成以下错误消息:

^{pr2}$

我还试着跑步:

CREATE EXTENSION plpython3u;

从而导致此错误:

ERROR: could not load library "C:/Program Files (x86)/PostgreSQL/9.2/lib/plpython3.dll": The specified module could not be found.
SQL state: 58P01

plpython3.dll文件存在于此位置,但显然缺少一些关键的依赖关系。我到处找遍了,没有发现任何有用的东西。我已经在机器上安装了Python2和3。。。在


Tags: 函数命令脚本消息postgresqlwindows错误create
2条回答

完整的答案可以找到: https://postgresrocks.enterprisedb.com/t5/PostgreSQL/unable-to-install-pl-python-extension/m-p/4090 它假定您已使用stackbuilder安装edb语言包。 请务必检查安装中的命令是否正确。 E、 g.postgresql数据路径,edb安装路径,python版本。 当你使用Dependency walker时(依赖.exe),只需注意pythonxx.dll. 对于较旧的PG版本,这可能与EDB语言包安装的版本一致,也可能不一致。对于10.7版,需要3.4版Python。对于windows,较新的3.4 Python版本似乎没有msi安装程序。您可能需要安装3.4.4,或者先尝试将PG 10升级到最新版本(10.11)。此版本需要Python3.7,因此可以使用EDB下载。 但是python版本可能已经存在并且可以找到。 could not load library plpython3.dll(这里是stackoverflow)有点接近,但没有详细说明所需的环境变量。 提出的解决方案不需要永久地更改env-vars,这对于使用几个python安装非常有用。在

EnterpriseDB中最新的(9.4或更高版本)二进制安装只包含plpython3u.dll。在9.4到9.6版本中,我必须安装python3.3才能运行plpython3u。在

您可以使用Dependency Walker.检查plpython3u.dll需要哪个版本的Python

相关问题 更多 >