FirebirdSQL logo

RDB$PROCEDURE_PARAMETERS

Описывает параметры хранимых процедур.

Table 1. Описание столбцов таблицы RDB$PROCEDURE_PARAMETERS
Наименование столбца Тип данных Описание

RDB$PARAMETER_NAME

CHAR(63)

Имя параметра.

RDB$PROCEDURE_NAME

CHAR(63)

Имя процедуры, в которой используется параметр.

RDB$PARAMETER_NUMBER

SMALLINT

Последовательный номер параметра.

RDB$PARAMETER_TYPE

SMALLINT

Указывает, является ли параметр входным (значение 0) или выходным(значение 1).

RDB$FIELD_SOURCE

CHAR(63)

Имя домена, созданного пользователем (при использовании ссылки надомен вместо типа), или домена, автоматически построенного системойдля параметра процедуры. Во втором случае имя будет начинаться ссимволов RDB$.

RDB$DESCRIPTION

BLOB TEXT

Текст произвольного примечания к параметру.

RDB$SYSTEM_FLAG

SMALLINT

Указывает, является ли параметр определённым системой (значение 1и выше) или пользователем (значение 0).

RDB$DEFAULT_VALUE

BLOB BLR

Значение по умолчанию на языке BLR.

RDB$DEFAULT_SOURCE

BLOB TEXT

Значение по умолчанию в исходном виде на языке SQL.

RDB$COLLATION_ID

SMALLINT

Идентификатор используемого порядка сортировки для символьногопараметра.

RDB$NULL_FLAG

SMALLINT

Признак допустимости пустого значения NULL.

RDB$PARAMETER_MECHANISM

SMALLINT

Механизм передачи параметра:

0 — по значению;
1 — по ссылке;
2 — через дескриптор;
3 — через дескриптор BLOB.

RDB$FIELD_NAME

CHAR(63)

Имя столбца, на которое ссылается параметр с помощью предложенияTYPE OF COLUMN.

RDB$RELATION_NAME

CHAR(63)

Имя таблицы, на которую ссылается параметр с помощью предложенияTYPE OF COLUMN.

RDB$PACKAGE_NAME

CHAR(63)

Имя пакета процедуры (если процедура упакованная), в которойиспользуется параметр.

RDB$PROCEDURES

Описывает хранимые процедуры.

Table 1. Описание столбцов таблицы RDB$PROCEDURES
Наименование столбца Тип данных Описание

RDB$PROCEDURE_NAME

CHAR(63)

Имя хранимой процедуры.

RDB$PROCEDURE_ID

SMALLINT

Уникальный идентификатор процедуры.

RDB$PROCEDURE_INPUTS

SMALLINT

Указывает количество входных параметров или их отсутствие(значение NULL).

RDB$PROCEDURE_OUTPUTS

SMALLINT

Указывает количество выходных параметров или их отсутствие(значение NULL).

RDB$DESCRIPTION

BLOB TEXT

Произвольный текст примечания к процедуре.

RDB$PROCEDURE_SOURCE

BLOB TEXT

Исходный код процедуры на языке SQL.

RDB$PROCEDURE_BLR

BLOB BLR

Двоичное представление (BLR) кода процедуры.

RDB$SECURITY_CLASS

CHAR(63)

Может указывать на класс безопасности, определённый в системнойтаблице RDB$SECURITY_CLASSES, для применения ограничений управлениядоступом.

RDB$OWNER_NAME

CHAR(63)

Имя пользователя — владельца (создателя) процедуры.

RDB$RUNTIME

BLOB

Описание метаданных процедуры. Внутреннее использование дляоптимизации.

RDB$SYSTEM_FLAG

SMALLINT

Указывает, что процедура определена пользователем (значение 0)или системой (значение 1 или выше).

RDB$PROCEDURE_TYPE

SMALLINT

Тип процедуры:

1 — селективная хранимая процедура (содержит в своём составе оператор SUSPEND);
2 — выполняемая хранимая процедура.

RDB$VALID_BLR

SMALLINT

Указывает, остаётся ли текст хранимой процедуры корректным послепоследнего изменения процедуры при помощи оператора ALTER PROCEDURE.

RDB$DEBUG_INFO

BLOB

Содержит отладочную информацию о переменных, используемых вхранимой процедуре.

RDB$ENGINE_NAME

CHAR(63)

Имя движка для использования внешних процедур. Обычно UDR.

RDB$ENTRYPOINT

CHAR(255)

Имя точки входа в библиотеке, где находится эта процедура.

RDB$PACKAGE_NAME

CHAR(63)

Имя пакета, если процедура является упакованной.

RDB$PRIVATE_FLAG

SMALLINT

Для неупакованных хранимых процедур всегда NULL, для упакованных

0 — если процедура описана в заголовке пакета и
1 — если процедура описана или реализована только в теле пакета (не описана взаголовке).

RDB$SQL_SECURITY

BOOLEAN

С какими правами выполняется процедура:

TRUE — с правами определяющего пользователя (SQL SECURITY DEFINER);
FALSE — с правами вызывающего пользователя (SQL SECURITY INVOKER);
NULL — привилегии выполнения наследуется от пакета.