PostgreSql中使用python
windows的环境搭建
- 找到windows系统上面pg需要的python版本。
- 在pg的安装目录下面的lib(如:C:\Program Files\PostgreSQL\9.4\lib)找到文件plpython3.dll
- 下载工具分析依赖:depend.exe(下载地址: http://www.dependencywalker.com/)
- 分析出依赖的python版本,譬如:Postgresql9.4需要python3.3
- 安装python。
- 在python官网下载相应的python版本,并且和pg的位数一致(64bits)
- 安装python,配置环境变量,cmd中输入python,正常运行即可。
- 用superuser登录pg,执行:create extension plpython3u;
- 没有报错,完成环境的搭建.
Linux下环境的搭建
- 安装python,如果是源码安装需要制定 --enable-shared
- 配置Linux下的python环境变量,如:
PYTHON_HOME=~~/python/3_5 export PATH=$PYTHON_HOME/bin:$PATH export PYTHON=$PYTHON_HOME/bin/python3 export LD_LIBRARY_PATH=$PYTHON_HOME/lib:$LD_LIBRARY_PATH
- pg采用源码编译,并制定-with-python3
- 用superuser登录pg,执行:create extension plpython3u;
- 没有报错即可
测试:
create or replace function py_max(a int, b int) returns int as $$ if a > b: return a return b $$ language plpython3u;
select py_max(10, 20);
=> 20
使用python做存储过程的优势
- 有些流程控制更加方便
- 可以使用python的自带的库,譬如分词库,numpy等等