Exibição REFERENTIAL_CONSTRAINTS¶
Esta exibição Information Schema mostra uma linha para cada restrição FOREIGN KEY definida para tabelas no banco de dados especificado (ou atual).
Restrições FOREIGN KEY são usadas para impor integridade referencial. Para obter mais informações, consulte Restrições e Restrições de integridade referencial.
Para retornar informações sobre outros tipos de restrição (bem como as restrições FOREIGN KEY), consulte o Exibição TABLE_CONSTRAINTS.
- Consulte também:
Colunas¶
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
CONSTRAINT_CATALOG |
TEXT |
Banco de dados ao qual pertence a restrição |
CONSTRAINT_SCHEMA |
TEXT |
Esquema ao qual pertence a restrição |
CONSTRAINT_NAME |
TEXT |
Nome da restrição |
UNIQUE_CONSTRAINT_CATALOG |
TEXT |
Banco de dados da restrição única referenciada pela restrição atual |
UNIQUE_CONSTRAINT_SCHEMA |
TEXT |
Esquema da restrição única referenciada pela restrição atual |
UNIQUE_CONSTRAINT_NAME |
TEXT |
Nome da restrição única referenciada pela restrição atual |
MATCH_OPTION |
TEXT |
Opção de correspondência para a restrição |
UPDATE_RULE |
TEXT |
Atualizar regra para a restrição atual |
DELETE_RULE |
TEXT |
Regra de exclusão para a restrição atual |
COMMENT |
TEXT |
Comentário para esta restrição |
CREATED |
TIMESTAMP_LTZ |
Hora de criação da restrição |
LAST_ALTERED |
TIMESTAMP_LTZ |
Data e hora em que o objeto foi alterado pela última vez por uma operação de metadados de DML, DDL ou em segundo plano. Consulte as Notas de uso. |
Notas de uso¶
A visualização exibe apenas objetos para os quais a função atual da sessão tem privilégios de acesso.
A coluna LAST_ALTERED é atualizada quando as seguintes operações são executadas em um objeto:
operações DDL.
operações DML (somente para tabelas). Esta coluna é atualizada mesmo quando nenhuma linha é afetada pela instrução DML.
Operações de manutenção em segundo plano em metadados realizadas pelo Snowflake.
Exemplos¶
Retorna informações sobre todas as restrições FOREIGN KEY no banco de dados atual.
SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS;
+--------------------+-------------------+-----------------------------------------------------+---------------------------+--------------------------+-----------------------------------------------------+--------------+-------------+-------------+---------+-------------------------------+-------------------------------+
| CONSTRAINT_CATALOG | CONSTRAINT_SCHEMA | CONSTRAINT_NAME | UNIQUE_CONSTRAINT_CATALOG | UNIQUE_CONSTRAINT_SCHEMA | UNIQUE_CONSTRAINT_NAME | MATCH_OPTION | UPDATE_RULE | DELETE_RULE | COMMENT | CREATED | LAST_ALTERED |
|--------------------+-------------------+-----------------------------------------------------+---------------------------+--------------------------+-----------------------------------------------------+--------------+-------------+-------------+---------+-------------------------------+-------------------------------|
| HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_51118aaf-1ee6-4548-bc9a-f87e65d92528 | HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_aad16788-491a-4e68-b0e3-30d48a33a1c1 | FULL | NO ACTION | NO ACTION | NULL | 2024-09-19 13:51:37.355 -0700 | 2024-09-19 13:51:37.608 -0700 |
| HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_c97bfe9b-6098-4b8a-b796-e341071db72a | HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_0bd41d0f-11f7-4366-82a3-f03f31fcce7e | FULL | NO ACTION | NO ACTION | NULL | 2024-05-28 18:21:43.899 -0700 | 2024-05-28 18:21:44.268 -0700 |
+--------------------+-------------------+-----------------------------------------------------+---------------------------+--------------------------+-----------------------------------------------------+--------------+-------------+-------------+---------+-------------------------------+-------------------------------+
Junte esta exibição a Exibição TABLE_CONSTRAINTS para obter os nomes das tabelas de referência que têm restrições FOREIGN KEY:
SELECT tc.constraint_catalog, tc.constraint_schema, tc.constraint_name, tc.table_name, tc.constraint_type, tc.enforced
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS rc ON tc.constraint_name=rc.constraint_name;
+--------------------+-------------------+-----------------------------------------------------+------------+-----------------+----------+
| CONSTRAINT_CATALOG | CONSTRAINT_SCHEMA | CONSTRAINT_NAME | TABLE_NAME | CONSTRAINT_TYPE | ENFORCED |
|--------------------+-------------------+-----------------------------------------------------+------------+-----------------+----------|
| HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_51118aaf-1ee6-4548-bc9a-f87e65d92528 | HTFK | FOREIGN KEY | YES |
| HTABLES_DB | HTABLES_SCHEMA | SYS_CONSTRAINT_c97bfe9b-6098-4b8a-b796-e341071db72a | HT619 | FOREIGN KEY | YES |
+--------------------+-------------------+-----------------------------------------------------+------------+-----------------+----------+