Информация об ограничениях целостности (LINTER_DICT_INFO)
Функция
Предоставление выражения для генерируемого столбца или ограничения целостности CHECK для других типов столбцов.
Спецификация
::=::=::=::=Общие правила
-
Параметр
<идентификатор таблицы>задает системный идентификатор таблицы, об ограничениях целостности которой запрашивается информация. Системные идентификаторы таблиц хранятся в системной таблице$$$SYSRL, столбец$$$S11. -
Параметр
<тип информации>задает тип запрашиваемой информации:-
1– ограничение целостностиCHECK; -
2– выражение для генерируемого столбца.
-
-
Параметр
<номер столбца>определяет порядковый номер столбца заданной таблицы (начиная с1). -
Если
<номер столбца>не задан или равен0, возвращаются ограничения целостности для всей таблицы. -
Аргументы могут быть заданы
<SQL-параметром>, который должен содержать спецификацию типа данных параметра.select trim(linter_dict_info (? (int), ? (int), ? (int))); 1 537 0 |CHECK("I" > "J") |
Возвращаемое значение
-
Символьная строка переменной длины
VARCHAR(2048). Формат строки зависит от значения входных параметров:-
<номер режима>=1, <номер столбца> больше 0:
"CHECK(<выражение1>)<пробел> CHECK(<выражение2>)..."
-
<номер режима>=1, <номер столбца> равен 0:
"CHECK(<выражение1>),CHECK(<выражение2>) ..."
-
<номер режима>=2, <номер столбца> больше 0:
"<выражение для генерируемого столбца>"
-
-
Пустая строка – если для столбца не задано условие
CHECK, или он не является генерируемым столбцом, или он создан с атрибутомGENERATED AS IDENTITY.
Примеры
-
Получить CHECK-выражение для всей таблицы
CREATE or replace TABLE TST_CHECK (I INT, J INT, CHECK (I>J)); select trim(linter_dict_info (1,$$$s11, 0)) from $$$sysrl where $$$s13='TST_CHECK'; |CHECK("I" > "J") | -
Получить CHECK-выражение для заданного столбца
CREATE or replace TABLE TST_CHECK (I INT CHECK (I>0) CHECK (I<10)); select trim(linter_dict_info (1,$$$s11, 1)) from $$$sysrl where $$$s13='TST_CHECK'; |CHECK("I" > 0) CHECK("I" < 10) |