开发快照。 PostgreSQL 20devel 尚未正式发布,内容仍可能变化。
第 44 章 PL/Python — Python 过程语言
目录
PL/Python 过程语言允许使用 Python 语言编写 PostgreSQL 函数和过程。
要在特定数据库中安装 PL/Python,可使用 CREATE EXTENSION plpython3u。
提示
如果把某种语言安装到 template1 中,之后创建的所有数据库都会自动安装该语言。
PL/Python 只能作为一种“不受信任的”语言使用,这意味着它不提供任何机制来限制用户能在其中做什么,因此其名称为 plpython3u。如果将来能在 Python 中开发出安全的执行机制,受信任的变体 plpython 可能会出现。使用不受信任的 PL/Python 编写函数时,函数编写者必须确保该函数不会被用来做任何不希望发生的事情,因为它能够做到任何以数据库管理员身份登录的用户所能做的事情。只有超级用户才能在 plpython3u 这类不受信任的语言中创建函数。
注意
源码包用户必须在安装过程中专门启用 PL/Python 的构建(更多信息请参阅安装说明)。二进制包用户则可能会在单独的子包中找到 PL/Python。