Поделиться через


TABLE_CONSTRAINTS

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

применяется:помечено галочкой Databricks SQL помечено галочкой Databricks Runtime 11.3 LTS и выше помечено галочкой только Unity Catalog

INFORMATION_SCHEMA.TABLE_CONSTRAINTS содержит метаданные для всех ограничений на первичные и внешние ключи в каталоге.

Возвращаемые строки ограничены таблицами, с которыми пользователь имеет разрешение на взаимодействие.

Определение

Отношение TABLE_CONSTRAINTS содержит следующие столбцы:

Имя. Тип данных Может быть пустым Стандарт Описание
CONSTRAINT_CATALOG STRING Нет Да Каталог, содержащий ограничение.
CONSTRAINT_SCHEMA STRING Нет Да Схема, содержащая ограничение.
CONSTRAINT_NAME STRING Нет Да Имя ограничения.
TABLE_CATALOG STRING Нет Да Каталог, содержащий таблицу.
TABLE_SCHEMA STRING Нет Да Схема, содержащая таблицу.
TABLE_NAME STRING Нет Да Имя таблицы, в которой определено ограничение.
CONSTRAINT_TYPE STRING Нет Да Один из 'CHECK', 'PRIMARY KEY', 'FOREIGN KEY'
IS_DEFERRABLE STRING Нет Да Всегда’YES’. Зарезервировано для последующего использования.
INITIALLY_DEFERRED STRING Нет Да Всегда'YES'. Зарезервировано для последующего использования.
ENFORCED STRING Нет Да 'YES', если ограничение применяется, 'NO' в противном случае.
COMMENT STRING Да Нет Необязательное описание ограничения.

Ограничения

К отношению TABLE_CONSTRAINTS применяются следующие ограничения:

Класс Имя. Список столбцов Описание
Первичный ключ TAB_CONS_PK CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME Уникально идентифицирует отношение.
Внешний ключ TAB_CONS_TABLES_FK TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME Ссылается на TABLES_PK

Примеры

> SELECT constraint_name
    FROM information_schema.constraint_table_usage
    WHERE table_schema = 'information_schema'
      AND table_name = 'tables'
      AND constraint_type = 'CHECK'