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 .