PL 矩阵

来自 PostgreSQL 维基
跳转到导航跳转到搜索

此页面提供 PostgreSQL 已知过程语言处理程序的列表。


语言 处理程序 状态 可用性 命名参数? OUT 参数? (不)可信 备注
C# PL/dotnet Beta pl/dotnet 不可信 使用 CREATE EXTENSION 安装
F# PL/dotnet Beta pl/dotnet 不可信 使用 CREATE EXTENSION 安装
Haskell PL/Haskell 生产 PL/Haskell ? ? 可信和不可信
Java PL/Java 生产 PL/Java 部分(没有 INOUT) 可信和不可信,两者都 可配置 使用 CREATE EXTENSION 安装
JavaScript PL/v8 生产 pl/v8js 可信 使用 CREATE EXTENSION 安装
Julia PL/Julia ? pl/julia ? ? 不可信 使用 CREATE EXTENSION 安装
LOLCODE PL/lolcode Alpha pl/lolcode ? ?
Lua pl/lua (ng) 生产 pl/lua (ng) 可信和不可信 使用 CREATE EXTENSION 安装
Perl PL/Perl 生产 内核 可信和不可信
PHP PL/PHP Beta pl/php ? ?
PL/pgSQL PL/pgSQL 生产 内核 可信 默认编译
Python PL/Python 生产 内核 从 8.4 开始支持一个 OUT 参数,从 9.1 开始支持多个 OUT 参数 不可信
R PL/R 生产 PL/R 不可信
Ruby PL/Ruby ? pl/ruby ? ? ?
Rust PL/Rust 生产 PL/Rust 可信和不可信 使用 CREATE EXTENSION 安装
Scheme PL/scheme ? pl/scheme 可信和不可信
Shell PL/sh 生产 PL/sh 否(没有用) 不可信
SQL 生产 内核 是(版本 9.2+ 可信 默认可用
Tcl PL/Tcl 生产 内核 可信和不可信
XSLT PL/XSLT Alpha pl/xslt 不可信 使用 CREATE EXTENSION 安装

注意:所有语言都允许在函数参数列表声明中使用参数名称。命名参数 列表示函数体是否可以按这些名称引用参数,或者是否必须使用诸如 $1$2 等符号。

注意:所有语言都支持明确标记为 IN 参数的参数。除非另有说明,支持 OUT 参数的语言也支持 INOUT 参数。