在postgresql9.6 中使用plpython

PL/Python过程语言允许用Python 语言编写PostgreSQL函数。 我们需要安装python扩展程序。

 要注意PostgreSQL和Python的版本对应关系。PostgreSQL 9.6只支持Python 3.3;Postgresql 9.2-9.5只支持Python 3.2。

1. 下载并安装Python 3.3。在https://www.python.org/download/releases/3.3.0/ 选择操作系统对应对应版本。

2. 进入python的安装路径下的DDLs文件夹,找到python3.dll。把它复制到Postgresql安装目录下的lib文件夹中,重命名为python33.dll(“33”代表python 3.3).

3. 执行如下代码:

create extension if not exists plpython3u;

create function pymax (a integer, b integer)

returns integer

as $$

    if a > b:

        return a

    return b

$$ language plpython3u;
select pymax(1,2);

返回结果:2

这样就成功地创建并调用了一个由PL/Python编写的函数。

注意:

如果PostgreSQL没有安装python.dll程序,或者安装的python.dll版本不对,在执行“CREATE EXTENSION plpython3u” 后,会报出如下错误:

ERROR:  could not access file "$libdir/plpython3": No such file or directory.

所以一定要注意安装正确的版本。

猜你喜欢

转载自blog.csdn.net/international24/article/details/82689574