Problem:
Du ønsker at finde navnene på begrænsningerne i en tabel i MySQL.
Eksempel:
Vi ønsker at vise navnene på begrænsningerne i tabellen student .
Løsning:
SELECT TABLE_NAME, CONSTRAINT_TYPE, CONSTRAINT_NAME FROM information_schema.table_constraints WHERE table_name='student';
Her er resultatet:
| TABLE_NAME | CONSTRAINT_TYPE | CONSTRAINT_NAME |
|---|---|---|
| elev | PRIMÆR NØGLE | PRIMÆR |
| elev | UNIKK | personligt_nummer |
| elev | UDLANDS NØGLE | student_ibfk_1 |
| elev | TJEK | student_chk_1 |
Diskussion:
Brug visningen table_constraints i information_schema skema. Denne visning indeholder mange kolonner, men de vigtigste er table_name , constraint_type , og constraint_name . Kolonnen tabelnavn giver dig navnet på den tabel, hvori begrænsningen er defineret, og kolonnen constraint_name indeholder navnet på begrænsningen. Kolonnen constraint_type angiver typen af begrænsning:PRIMARY KEY for den primære nøgletype, FOREIGN KEY for fremmednøgletypen UNIQUE for de unikke værdier og CHECK til begrænsningskontrollen. I vores eksempel kan du se begrænsningen med navnet PRIMARY for den primære nøgle i student bord. constraint_type kolonne giver dig information om typen af hver begrænsning; for den primære nøgle er det PRIMARY KEY .