Problém:
Chcete najít názvy omezení v tabulce v Oracle.
Příklad:
Názvy omezení chceme zobrazit v tabulce student
.
Řešení:
select CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME from USER_CONSTRAINTS where TABLE_NAME='STUDENT';
Zde je výsledek:
CONSTRAINT_NAME | CONSTRAINT_TYPE | TABLE_NAME |
---|---|---|
SYS_C007376 | R | STUDENT |
SYS_C007374 | P | STUDENT |
SYS_C007375 | U | STUDENT |
SYS_C007372 | C | STUDENT |
Diskuse:
V Oracle použijte zobrazení user_constraints
pro zobrazení názvů omezení v databázi. Sloupec constraint_name
obsahuje název omezení, constraint_type
označuje typ omezení a table_name
obsahuje název tabulky, do které omezení patří. Ve sloupci constraint_type je hodnota „R“ pro cizí klíč, „P“ pro primární klíč, „U“ pro omezení jedinečnosti a „C“ pro kontrolu omezení. V našem příkladu je omezení v tabulce student
typu P (primární klíč), jehož název je SYS_C007374
.