sql >> Database >  >> RDS >> Oracle

Hoe de naam van een beperking in Oracle te vinden

Probleem:

U wilt de namen van de beperkingen in een tabel in Oracle vinden.

Voorbeeld:

We willen de namen van de beperkingen weergeven in de tabel student .

Oplossing:

select CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME
from USER_CONSTRAINTS
where TABLE_NAME='STUDENT';

Hier is het resultaat:

CONSTRAINT_NAME CONSTRRAINT_TYPE TABLE_NAME
SYS_C007376 R STUDENT
SYS_C007374 P STUDENT
SYS_C007375 U STUDENT
SYS_C007372 C STUDENT

Discussie:

Gebruik in Oracle de weergave user_constraints om de namen van de beperkingen in de database weer te geven. De kolom constraint_name bevat de naam van de beperking, constraint_type geeft het type beperking aan, en table_name bevat de naam van de tabel waartoe de beperking behoort. In de kolom constraint_type is de waarde "R" voor de externe sleutel, "P" voor de primaire sleutel, "U" voor de uniciteitsbeperking en "C" voor de beperkingscontrole. In ons voorbeeld staat er een beperking in de tabel student van het type P (primaire sleutel) waarvan de naam SYS_C007374 . is .


  1. Prestaties van tabelvariabelen in SQL Server

  2. Unieke beperking van Postgres versus index

  3. SQL-fout:onjuiste syntaxis bij het trefwoord 'Gebruiker'

  4. Dubbele dubbele punt (::) notatie in SQL