Exibição TABLE_CONSTRAINTS¶
Esta exibição Information Schema exibe uma linha para cada restrição de tabela definida no banco de dados especificado (ou atual). Esta exibição retorna informações sobre os seguintes tipos de restrição:
PRIMARY KEY
FOREIGN KEY
UNIQUE
Para obter informações gerais sobre restrições, consulte Restrições.
- 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 |
TABLE_CATALOG |
TEXT |
Nome do banco de dados da tabela atual |
TABLE_SCHEMA |
TEXT |
Nome do esquema da tabela atual |
TABLE_NAME |
TEXT |
Nome da tabela atual |
CONSTRAINT_TYPE |
TEXT |
Tipo de restrição |
IS_DEFERRABLE |
TEXT |
Se a avaliação da restrição pode ser adiada |
INITIALLY_DEFERRED |
TEXT |
Se a avaliação da restrição é adiável e inicialmente adiada |
ENFORCED |
TEXT |
Se a restrição é aplicada |
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. |
RELY |
TEXT |
Especifica se uma restrição no modo NOVALIDATE é levada em conta durante a reescrita da consulta. Para obter mais detalhes, consulte Propriedades de restrição. |
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.
Exemplo¶
Crie uma tabela híbrida com uma restrição PRIMARY KEY de várias colunas e um comentário sobre a restrição. Consulte a exibição para obter informações sobre a restrição.
CREATE OR REPLACE HYBRID TABLE HT2PK
(col1 NUMBER(38,0) NOT NULL,
col2 NUMBER(38,0) NOT NULL,
col3 VARCHAR(16777216),
CONSTRAINT PKEY_2 PRIMARY KEY (col1, col2) COMMENT 'Primary key on two columns');
SELECT constraint_name, table_name, constraint_type, enforced, comment
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE COMMENT IS NOT NULL;
+-----------------+------------+-----------------+----------+----------------------------+
| CONSTRAINT_NAME | TABLE_NAME | CONSTRAINT_TYPE | ENFORCED | COMMENT |
|-----------------+------------+-----------------+----------+----------------------------|
| PKEY_2 | HT2PK | PRIMARY KEY | YES | Primary key on two columns |
+-----------------+------------+-----------------+----------+----------------------------+
Retorna uma lista de restrições em todas as tabelas que têm nomes começando com HT
:
SELECT constraint_name, table_name, constraint_type, enforced, comment
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE table_name LIKE 'HT%'
ORDER BY table_name;
+-----------------------------------------------------+------------------------+-----------------+----------+----------------------------+
| CONSTRAINT_NAME | TABLE_NAME | CONSTRAINT_TYPE | ENFORCED | COMMENT |
|-----------------------------------------------------+------------------------+-----------------+----------+----------------------------|
| SYS_CONSTRAINT_da2e8533-5501-4862-ae42-0a7798d578eb | HT01 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_5b3c6d13-f607-4ef6-a147-0026bae98c71 | HT1 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_d5887706-0e3b-4d5b-8787-e3327cdf4851 | HT100 | PRIMARY KEY | YES | NULL |
| PK1 | HT1PK | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_f1d1e153-cc32-477c-9a24-5c049e40ca0a | HT239 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_fe27c4f3-23f6-4091-92c4-5acd53cc5029 | HT239 | UNIQUE | YES | NULL |
| PKEY_2 | HT2PK | PRIMARY KEY | YES | Primary key on two columns |
| SYS_CONSTRAINT_0bd41d0f-11f7-4366-82a3-f03f31fcce7e | HT616 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_6124310b-5f50-4009-a5c0-dc1b5a89b0bc | HT616 | UNIQUE | YES | NULL |
| SYS_CONSTRAINT_bf3d76ba-de1e-4227-954f-9f53de777ed4 | HT619 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_c97bfe9b-6098-4b8a-b796-e341071db72a | HT619 | FOREIGN KEY | YES | NULL |
| SYS_CONSTRAINT_6e02d776-1759-449e-aece-467aaaefcfc8 | HTFK | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_51118aaf-1ee6-4548-bc9a-f87e65d92528 | HTFK | FOREIGN KEY | YES | NULL |
| SYS_CONSTRAINT_fe27c4f3-23f6-4091-92c4-5acd53cc5029 | HTLIKE | UNIQUE | YES | NULL |
| SYS_CONSTRAINT_f1d1e153-cc32-477c-9a24-5c049e40ca0a | HTLIKE | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_aad16788-491a-4e68-b0e3-30d48a33a1c1 | HTPK | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_0bdff17e-e90a-4929-99c5-98e3597e3069 | HTT1 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_39e9110f-7a72-454e-bfe2-0a26eca97e7c | HT_PRECIP | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_6acd8274-04e7-4b22-b9ae-29185b979219 | HT_SENSOR_DATA_DEVICE1 | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_39e9110f-7a72-454e-bfe2-0a26eca97e7c | HT_WEATHER | PRIMARY KEY | YES | NULL |
| SYS_CONSTRAINT_843d828a-900d-409e-a57d-8f27b602eccf | HT_WEATHER | PRIMARY KEY | YES | NULL |
+-----------------------------------------------------+------------------------+-----------------+----------+----------------------------+