在Windows for PostgreSQL 12上安装PL/Python
我一直在为一个项目研究FHIR,我们正在使用PostgreSQL作为数据库。在阅读文档时,我逐渐了解了PL/Python,并决定尝试一下,但我无法安装Python扩展 当我运行命令在Windows for PostgreSQL 12上安装PL/Python,python,postgresql,plpython,postgres-plpython,Python,Postgresql,Plpython,Postgres Plpython,我一直在为一个项目研究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. 我查过了,但没办
CREATE EXTENSION pypthon3u时代码>我得到以下错误
Could not load library "C:/Program Files/PostgreSQL/12/lib/plpython3.dll": The specified module could not be found.
我查过了,但没办法
我的PostgreSQL版本:<强> PostgreSQL 12.2,由Visual C++编译生成1914, 64位< /强>
已安装的Python版本:3.7.7(64位)
操作系统信息:windows10enterpriseVersion1909OS-Build18363.657
对我来说,它看起来像是不正确的Python版本,但我正在安装Python 3.7.*版本,根据安装目录中的doc\installation notes.html
指定编译PostgreSQL
任何帮助都将不胜感激。即使您使用EDB安装程序的Stack Builder安装Python,您仍然必须按照说明“确保它们包含在启动数据库服务器的PATH变量中”。我必须在系统级别这样做,因为我找不到为单个服务设置路径的方法
然后还需要设置PYTHONPATH,它似乎没有文档记录
因此,我最终将c:\edb\languagepack\v1\Python-3.7
添加到路径中,并使用c:\edb\languagepack\v1\Python-3.7\Lib
创建Python路径。我不得不添加包含plpython3.dll do系统/用户变量(windows)的目录。不幸的是,我在一两个月前安装了它,所以我不确定,但我有这个文件(postgresql-12.2-1-windows-x64.exe)用于安装DB.PL/Python的未安装。您必须先安装二进制文件,然后才能创建扩展。您可以指导我如何安装二进制文件吗?@LaurenzAlbe就是您所说的吗?这看起来像EDB安装程序。如果您使用它,并让它启动Stack Builder,然后让它安装语言包,那么uld安装自己的python。这是您所做的,还是您从其他地方安装了python?我没有使用EDB安装程序。根据您的建议,我已将PYTHONPATH添加到path并作为用户变量,但仍然得到相同的错误。PYTHONPATH和path是两个单独的变量,您没有将一个设置为另一个,而是将它们单独设置。在我的手,仅仅设置路径就足以允许创建扩展,但是在设置PYTHONPATH之前,它无法正常工作。是的,我知道两者都不同。我在路径中添加了python,但它不起作用。记住,我没有使用EDB,并且从他们的官方网站安装了python。然后我添加了PYTHONPATH,但运气不好。我重新安装了PostgreSQL并使用EDB语言包安装了python。c:\EDB\languagepack\v1\python-3.7
到PATH,并添加了带有c:\EDB\languagepack\v1\python-3.7\Lib
的PYTHONPATH,但仍然得到相同的错误。