PostgreSQL提供了除了SQL和C之外,还可以使用其他语言创建用户定义函数或触发器过程的能力。这些语言被称为“过程语言”(PLs),是扩展PostgreSQL的强大方法。
PostgreSQL内置的过程语言是PL/pgSQL,并且在所有数据库中默认存在。另外三种过程语言—— PL/Perl、PL/Python和PL/Tcl——是PostgreSQL基本发行版的一部分,但在编译PostgreSQL时需要显式启用。(大多数包管理系统将它们包含为单独的软件包)。
还有许多由第三方项目维护但未包含在PostgreSQL基本发行版中的过程语言也可用;有关详细信息,请参阅下面的列表。
请注意,过程语言(PL/pgSQL除外)必须在要使用它们的每个数据库中显式启用。过程语言只能由数据库超级用户启用。
可用的过程语言
核心过程语言
外部维护的过程语言
参考资料
- PostgreSQL文档: 过程语言
- PostgreSQL文档: 附录 H.3 - 过程语言
有用链接
- 创建PostgreSQL过程语言 - 第一部分:设置 - 2020 2ndQuadrant博客文章
- 创建PostgreSQL过程语言 - 第二部分:嵌入Julia - 2020 2ndQuadrant博客文章
