Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle encontra uma restrição

select * from all_constraints
where owner = '<NAME>'
and constraint_name = 'SYS_C00381400'
/

Como todas as visualizações de dicionário de dados, esta é uma visualização USER_CONSTRAINTS se você deseja apenas verificar seu esquema atual e uma visualização DBA_CONSTRAINTS para usuários de administração.

A construção do nome da restrição indica um nome de restrição gerado pelo sistema. Por exemplo, se especificarmos NOT NULL em uma declaração de tabela. Ou mesmo uma chave primária ou única. Por exemplo:
SQL> create table t23 (id number not null primary key)
  2  /

Table created.

SQL> select constraint_name, constraint_type
  2  from user_constraints
  3  where table_name = 'T23'
  4  /

CONSTRAINT_NAME                C
------------------------------ -
SYS_C00935190                  C
SYS_C00935191                  P

SQL>

'C' para verificação, 'P' para primário.

Geralmente, é uma boa ideia dar um nome explícito às restrições relacionais. Por exemplo, se o banco de dados criar um índice para a chave primária (o que fará se essa coluna ainda não estiver indexada), ele usará o nome da restrição oo nome do índice. Você não quer um banco de dados cheio de índices nomeados como SYS_C00935191 .

Para ser honesto, a maioria das pessoas não se incomoda em nomear restrições NOT NULL.