3.2.2. Az idegen kulcsok definiálása

iDevice ikon

A hivatkozási épség biztosítása érdekében adjuk meg a külső kulcsokat, miután ezek a kapcsolat hordozói a táblák között. Hiszen egy mező külső kulcsként csak olyan értéket vehet fel, amit kulcsként már tartalmaz. Ugyanakkor egy kulcsértéket addig nem szabad törölni, amíg külső kulcsként van rá hivatkozás.

A külső kulcs szerkezetének természetesen azonosnak kell lennie azon elsődleges kulcséval, melyre hivatkozik; de a kulcsot alkotó oszlopnevek egyezése nincs kikötve. Természetesen lehet több idegen kulcs is egy táblában.

Figyelem: ha az idegen kulcs nem kulcsszerepű (csak leíró), akkor nekünk kell eldönteni, hogy lehet-e nem kitöltött az ügyvitel szerint (ha nem, akkor az értékére megszorítást teszünk NOT NULL-al).

 

Megjegyzés: általábann elegendő a kapcsolt tábla nevét megadni a külső kulcs mellett, de előfordulhat, hogy a megvalósítás megengedi az elsődleges kulcstól különböző, másik egyedi kulcsra való hivatkozást is.

 

Arról is gondoskodni kell, hogy a szülő-tábla hivatkozott sorának törlése / módosítása esetén mi legyen a válaszlépés a gyerek-tábla hivatkozó sorában:

  • ismeretlen értékkel töltse fel ott is
  • alapértelmezett értékkel töltse fel ott is
  • ott is törölje ki a hivatkozó sorokat / ott is módosítsa a hivatkozások értékét az új értékre
  • ne tegyen semmit

az adatbáziskezelő rendszer.