Перейти к основному содержимому

pg_language

В каталоге pg_language регистрируются языки, на которых можно писать функции или хранимые процедуры.

СтолбецТип данныхОписание
oidoidИдентификатор строки
lannamenameИмя языка
lanowneroid (ссылается на pg_authid.oid)Владелец языка
lanisplboolЭто false для внутренних языков (таких как SQL) и true для языков, определяемых пользователем. В настоящее время pg_dump все еще использует это, чтобы определить, какие языки нужно сбросить, но в будущем это может быть заменено другим механизмом
lanpltrustedboolTrue, если это доверенный язык, то есть считается, что он не предоставляет доступ ни к чему, кроме обычной среды выполнения SQL. Только суперпользователи могут создавать функции на недоверенных языках
lanplcallfoidoid (ссылается на pg_proc.oid)Для не-внутренних языков это ссылка на обработчик языка, который является специальной функцией, отвечающей за выполнение всех функций, написанных на определенном языке. Ноль для внутренних языков
laninlineoid (ссылается на pg_proc.oid)Это ссылка на функцию, которая отвечает за выполнение «встроенных» анонимных блоков кода (блоки DO). Ноль, если встроенные блоки не поддерживаются
lanvalidatoroid (ссылается на pg_proc.oid)Это ссылка на функцию валидатора языка, которая отвечает за проверку синтаксиса и валидности новых функций при их создании. Ноль, если валидатор не предоставлен
lanaclaclitem[]Права доступа