51.29. pg_language #

В каталоге pg_language регистрируются языки, на которых возможно писать функции или хранимые процедуры. За дополнительной информацией о языковых обработчиках обратитесь к описанию CREATE LANGUAGE и Главе 40.

Таблица 51.29. Столбцы pg_language

Тип столбца

Описание

oid oid

Идентификатор строки

lanname name

Имя языка

lanowner oid (ссылается на pg_authid.oid)

Владелец языка

lanispl bool

Для внутренних языков (например, SQL) содержит false, а для пользовательских языков — 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[]

Права доступа; за подробностями обратитесь к Разделу 5.7.