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