2025年9月25日: PostgreSQL 18 发布!
支持的版本: 当前 (18) / 17 / 16 / 15 / 14 / 13
开发版本: devel
不支持的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2

第 44 章. PL/Python — Python 过程语言

PL/Python 过程语言允许使用 Python 语言编写 PostgreSQL 函数和过程。

要在特定数据库中安装 PL/Python,请使用 CREATE EXTENSION plpython3u

提示

如果将一种语言安装到 template1 中,那么随后创建的所有数据库都将自动安装该语言。

PL/Python 仅作为“不可信”(untrusted)语言可用,这意味着它不提供任何限制用户可以执行的操作的方法,因此其名称为 plpython3u。如果将来在 Python 中开发了安全的执行机制,可能会提供一个受信任的变体 plpython。使用不可信 PL/Python 编写函数时,必须小心确保该函数不会被用于执行任何不受欢迎的操作,因为它能够执行作为数据库管理员登录的用户可以执行的任何操作。只有超级用户才能创建不可信语言(如 plpython3u)中的函数。

注意

源代码包的用户必须在安装过程中特别启用 PL/Python 的构建。(有关更多信息,请参阅安装说明。)二进制包的用户可能会在单独的子包中找到 PL/Python。

提交更正

如果您在文档中看到任何不正确、与您对特定功能的实际体验不符或需要进一步澄清的内容,请使用 此表单 报告文档问题。