Alapvető kulcsok, amelyek egyszerűvé teszik az adatbáziskezelést

Az adatbázis-kulcsok a legegyszerűbb módja a hatékony relációs adatbázis létrehozásának

Amint azt már tudja, az adatbázisok táblákat használnak információ rendezésére. (Ha nincs alaptalálat az adatbázis fogalmakkal kapcsolatban, olvassa el az "Adatbázis" című részt ). Minden táblázat több sorból áll, amelyek mindegyike egy adatbázis-rekordnak felel meg. Tehát, hogyan tartják az adatbázisok mindegyikét egyenesen? A kulcsok használata.

Elsődleges kulcsok

Az első kulcsfontosságú kulcs, amelyet megvitatunk, az elsődleges kulcs . Minden adatbázistáblanak tartalmaznia kell egy vagy több oszlopot, amelyek az elsődleges kulcsként szerepelnek . A kulcshoz tartozó értéknek egyedinek kell lennie az adatbázis minden egyes rekordja számára.

Tegyük fel például, hogy van egy olyan táblázatunk, amelynek neve Employees, amely személyi adatokat tartalmaz a cég minden alkalmazottjára vonatkozóan. Meg kell választanunk egy megfelelő elsődleges kulcsot, amely egyedileg azonosíthatja az egyes munkavállalókat. Az első gondolata lehet, ha a munkavállaló nevét használja. Ez nem nagyon működne, mert elképzelhető, hogy két, azonos nevű munkatársat bérel. Jobb választás lehet egy olyan egyedi munkavállalói azonosítószám használata, amelyet minden munkavállalóhoz hozzárendelnek, amikor béreltek. Egyes szervezetek úgy döntenek, hogy társadalombiztosítási számokat (vagy hasonló kormányazonosítót) használnak erre a feladatra, mert minden alkalmazottnak már van egy, és garantáltan egyedülálló. Azonban a társadalombiztosítási számok ilyen célú felhasználása rendkívül ellentmondásos az adatvédelmi aggályok miatt. (Ha egy kormányzati szervezetnél dolgozik, a társadalombiztosítási szám használata akár törvénytelen is lehet a 1974. évi Privacy Act alapján.) Ezért a legtöbb szervezet átkerült egyedi azonosítók (munkavállalói azonosító, hallgatói azonosító stb.) Használatára .), amelyek nem osztják meg ezeket az adatvédelmi kérdéseket.

Miután eldöntötte az elsődleges kulcsot és beállította az adatbázist, az adatbáziskezelő rendszer érvényesíteni fogja a kulcs egyediségét.

Ha olyan rekordot próbál beilleszteni egy olyan táblázathoz, amelynek elsődleges kulcsa létezik egy meglévő rekord, akkor a betű meghibásodik.

A legtöbb adatbázis képes saját primer kulcsok létrehozására is. A Microsoft Access például úgy konfigurálható, hogy az AutoNumber adattípus használatával hozzon létre egy egyedi azonosítót a táblában szereplő összes rekordhoz. Bár hatékony, ez egy rossz tervezési gyakorlat, mivel minden táblánál értelmetlen értéket hagy maga után. Miért nem használja ezt a helyet valami hasznos tároláshoz?

Külföldi kulcsok

A másik típus az idegen kulcs , amelyet a táblák közötti kapcsolatok létrehozására használnak. Természetes kapcsolatok vannak a táblák között a legtöbb adatbázis struktúrában. Visszatérve munkatársaink adatbázishoz, képzeljük el, hogy egy olyan táblázatot szeretnénk hozzáadni, amely az osztályhoz tartozó információkat tartalmaz az adatbázisban. Ezt az új táblát osztályoknak lehet nevezni, és nagy mennyiségű információt tartalmazna a részleg egészéről. Azt is szeretnénk, hogy az osztályon dolgozó alkalmazottakkal kapcsolatos információkat is felvehessünk, ugyanakkor két táblázatban (Alkalmazottak és Osztályok) ugyanazt az információt kapnánk. Ehelyett létrehozhatunk egy kapcsolatot a két táblázat között.

Tételezzük fel, hogy az Osztályok táblázat az Osztály neve oszlopot használja az elsődleges kulcsként. A két táblázat közötti kapcsolat létrehozásához egy új oszlopot adunk az Osztály munkatársak táblázatához. Ezután be kell tölteni a részleg nevét, amelyhez minden alkalmazott tartozik. Azt is tájékoztatjuk az adatbáziskezelő rendszert, hogy az Osztályok oszlopának oszlopa olyan külföldi kulcs, amely hivatkozik a Tanszékek táblázatára.

Az adatbázis ezután érvényesíti a referenciális integritást annak biztosításával, hogy az Alkalmazottak tábla Osztályok oszlopának összes értéke megfelelő bejegyzéseket tartalmaz a Osztályok táblázatban.

Ne feledje, hogy az idegen kulcsnak nincs különlegessége . Lehet (és valószínűleg meg is teszünk) több alkalmazott is, amely egy osztályhoz tartozik. Hasonlóképpen, nincs szükség arra, hogy az Osztályok táblázatban szereplő bejegyzésnek megfelelő bejegyzése legyen az Alkalmazottak táblázatában. Lehetséges, hogy rendelkezünk egy olyan osztályral, ahol nincsenek alkalmazottak.

További tudnivalók itt olvashatók: Idegen kulcsok létrehozása .