pg_language
В каталоге pg_language
регистрируются языки, на которых можно писать функции или хранимые процедуры.
Столбец | Тип данных | Описание |
---|---|---|
oid | oid | Идентификатор строки |
lanname | name | Имя языка |
lanowner | oid (ссылается на pg_authid.oid) | Владелец языка |
lanispl | bool | Это false для внутренних языков (таких как SQL) и true для языков, определяемых пользователем. В настоящее время pg_dump все еще использует это, чтобы определить, какие языки нужно сбросить, но в будущем это может быть заменено другим механизмом |
lanpltrusted | bool | True, если это доверенный язык, то есть считается, что он не предоставляет доступ ни к чему, кроме обычной среды выполнения SQL. Только суперпользователи могут создавать функции на недоверенных языках |
lanplcallfoid | oid (ссылается на pg_proc.oid) | Для не-внутренних языков это ссылка на обработчик языка, который является специальной функцией, отвечающей за выполнение всех функций, написанных на определенном языке. Ноль для внутренних языков |
laninline | oid (ссылается на pg_proc.oid) | Это ссылка на функцию, которая отвечает за выполнение «встроенных» анонимных блоков кода (блоки DO). Ноль, если встроенные блоки не поддерживаются |
lanvalidator | oid (ссылается на pg_proc.oid) | Это ссылка на функцию валидатора языка, которая отвечает за проверку синтаксиса и валидности новых функций при их создании. Ноль, если валидатор не предоставлен |
lanacl | aclitem[] | Права доступа |