![25. MySQL Idegen kulcs megkötések- Node.js Tutorial](https://i.ytimg.com/vi/W9gZg27MgyU/hqdefault.jpg)
Tartalom
- Meghatározás - Mit jelent az idegen kulcs?
- Bevezetés a Microsoft Azure és a Microsoft Cloud | A jelen útmutató során megtanulja, hogy mi a lényeg a felhőalapú számítástechnikában, és hogyan segítheti a Microsoft Azure a felhőből történő migrációt és az üzleti vállalkozás futtatását.
- A Techopedia magyarázza az Foreign Key-t
Meghatározás - Mit jelent az idegen kulcs?
Az idegen kulcs egy oszlop vagy oszlopcsoport egy relációs adatbázis táblában, amely kapcsolatot teremt a két táblázat adatai között. A táblák közötti kereszthivatkozásként működik, mivel hivatkozik egy másik tábla elsődleges kulcsára, és így kapcsolatot létesít közöttük.
A relációs adatbázisrendszer táblázatainak nagy része megfelel az idegen kulcs fogalmának. Komplex adatbázisokban és adattárházakban a tartomány adatait több táblába kell összeadni, ezáltal fenntartva a kapcsolatukat. A referenciális integritás fogalma az idegen kulcselméletből származik.
Az idegen kulcsok és azok megvalósítása összetettebbek, mint az elsődleges kulcsok.
Bevezetés a Microsoft Azure és a Microsoft Cloud | A jelen útmutató során megtanulja, hogy mi a lényeg a felhőalapú számítástechnikában, és hogyan segítheti a Microsoft Azure a felhőből történő migrációt és az üzleti vállalkozás futtatását.
A Techopedia magyarázza az Foreign Key-t
Minden idegen kulcsként működő oszlopnak megfelelő értéknek kell lennie a hivatkozási táblázatban. Különös figyelmet kell fordítani az adatok beillesztésekor és az adatok eltávolításakor az idegen kulcs oszlopából, mivel a gondatlan törlés vagy beillesztés tönkreteheti a két tábla közötti kapcsolatot.
Például, ha két tábla van, az ügyfél és a megrendelés, akkor kapcsolat létesíthető közöttük egy idegen kulcs bevezetésével a megrendelési táblába, amely utal az ügyfélazonosítóban szereplő ügyfél-azonosítóra. Az ügyfélazonosító oszlop létezik mind az ügyfél, mind a megrendelési táblázatokban. A megrendelési táblázatban szereplő ügyfélazonosító idegen kulcsvá válik, utalva az ügyféltáblázat elsődleges kulcsára. Bejegyzés beszúrásához a megrendelési táblázatba be kell tartani az idegen kulcs korlátozását. Sikertelen olyan ügyfélazonosító megadására tett kísérlet, amely nem található az ügyféltáblában, megőrzi a táblázat referencia-integritását.
Néhány, az idegen kulcsművelettel kapcsolatos referenciaművelet a következőket foglalja magában:
- Kaszkád: Ha a szülőtáblán sorokat törölnek, akkor az utódtáblában lévő idegen kulcs-oszlopokat is törlik, és lépcsőzetes törlést hoznak létre.
- Set Null: Ha a szülőtáblában egy hivatkozott sort törölnek vagy frissítenek, a hivatkozási sor idegen kulcs értékeit nullra állítják a referencia integritásának fenntartása érdekében.
- Triggerek: A referenciaműveleteket rendszerint triggerekként hajtják végre. Sok szempontból az idegen kulcsműveletek hasonlóak a felhasználó által definiált eseményindítókhoz. A megfelelő végrehajtás biztosítása érdekében a rendelt referenciaműveleteket időnként felváltják a felhasználó által meghatározott egyenértékű triggerekkel.
- Alapértelmezett érték: Ez a referenciaművelet hasonló a "beállított nullhoz". Az utódtábla idegen kulcs értékeit az alapértelmezett oszlopértékre állítják be, ha a szülőtáblában szereplő hivatkozott sort törlik vagy frissítik.
- Korlátozás: Ez egy idegen kulcshoz társított normál referenciaművelet. A szülőtáblában szereplő értéket nem lehet törölni vagy frissíteni, hacsak egy másik táblában idegen kulcs hivatkozik rá.
- Nincs művelet: Ez a referenciaművelet funkciója hasonló a "korlátozás" művelethez, azzal a különbséggel, hogy a művelet nélküli ellenőrzést csak a tábla megváltoztatása után hajtják végre.