1

我一直在为一个项目研究 FHIR,我们正在使用 PostgreSQL 作为数据库。在阅读文档时,我开始了解 PL/Python 并决定试一试,但我无法安装 python 扩展。

当我运行命令时CREATE EXTENSION pypthon3u;,出现以下错误

Could not load library "C:/Program Files/PostgreSQL/12/lib/plpython3.dll": The specified module could not be found.

我已经检查了这个SO 答案,但它无济于事。

我的 PostgreSQL 版本:PostgreSQL 12.2,由 Visual C++ build 1914 编译,64 位

安装的 Python 版本:3.7.7(64 位)

操作系统信息:Windows 10 企业1909操作系统内部版本18363.657

对我来说,它看起来像是不正确的 Python 版本,但我正在安装 python 3.7.* 版本,doc\installation-notes.html根据安装目录中的指定编译 PostgreSQL。

任何帮助将不胜感激。

4

2 回答 2

1

即使您使用 EDB 安装程序的 Stack Builder 来安装 Python,您仍然必须按照说明“确保它们包含在启动数据库服务器的 PATH 变量中”。我必须在系统级别执行此操作,因为我找不到为单个服务设置 PATH 的方法。

然后你还需要设置 PYTHONPATH ,这似乎没有记录。

所以我最终添加c:\edb\languagepack\v1\Python-3.7到 PATH 并使用c:\edb\languagepack\v1\Python-3.7\Lib.

于 2020-03-14T18:40:52.417 回答
0

我必须添加包含 plpython3.dll 的目录做系统/用户变量(windows)。

于 2021-03-18T09:58:26.217 回答