DBMS-kulcsok: jelölt, szuper, elsődleges, idegen kulcstípusok példával
Mik azok a kulcsok a DBMS-ben?
KULCSOK a DBMS-ben egy attribútum vagy attribútumok halmaza, amely segít azonosítani egy sort (tuple) egy relációban (táblázatban). Lehetővé teszik két tábla kapcsolatának megtalálását. A kulcsok segítségével egyedileg azonosíthatja a táblázat egy sorát a táblázat egy vagy több oszlopának kombinációjával. A kulcs akkor is hasznos, ha egyedi rekordot vagy sort keres a táblázatból. Az adatbáziskulcs abban is hasznos, hogy egyedi rekordot vagy sort keressen a táblából.
Példa:
munkavállalói azonosító | Keresztnév | Vezetéknév |
---|---|---|
11 | Andrew | Johnson |
22 | Tomi | Fa |
33 | Alex | Vonszol |
A fenti példában az alkalmazotti azonosító elsődleges kulcs, mivel egyedileg azonosítja az alkalmazotti rekordot. Ebben a táblázatban egyetlen másik alkalmazott sem rendelkezhet ugyanazzal az alkalmazotti azonosítóval.
Miért van szükségünk kulcsra?
Íme néhány ok, amiért az sql kulcsot használjuk a DBMS rendszerben.
- A kulcsok segítenek azonosítani a táblázat bármely adatsorát. Egy valós alkalmazásban egy táblázat több ezer rekordot tartalmazhat. Sőt, a feljegyzések sokszorosíthatók. Az RDBMS-ben található kulcsok biztosítják, hogy a táblarekordokat ezen kihívások ellenére is egyedileg azonosítani tudja.
- Lehetővé teszi kapcsolat létrehozását és azonosítását a táblák között
- Segít az identitás és az integritás érvényesítésében a kapcsolatban.
Kulcstípusok a DBMS-ben (adatbázis-kezelő rendszer)
A DBMS-ben alapvetően nyolc különböző típusú kulcs található, és mindegyik kulcsnak más-más funkciója van:
- Szuper kulcs
- Elsődleges kulcs
- Jelöltkulcs
- Alternatív kulcs
- Idegen kulcs
- Összetett kulcs
- Összetett kulcs
- Helyettesítő kulcs
Nézzük meg az egyes kulcsokat a DBMS-ben egy példával:
- Szuper kulcs – A szuperkulcs egy vagy több kulcsból álló csoport, amely a táblázat sorait azonosítja.
- Elsődleges kulcs - egy oszlop vagy oszlopcsoport egy táblázatban, amely egyedileg azonosítja a táblázat minden sorát.
- Jelölt kulcs – olyan attribútumok halmaza, amelyek egyedileg azonosítják a sorokat egy táblában. A Candidate Key egy szuperkulcs, ismétlődő attribútumok nélkül.
- Alternatív kulcs - egy oszlop vagy oszlopcsoport egy táblázatban, amely egyedileg azonosítja a táblázat minden sorát.
- Idegen kulcs - egy olyan oszlop, amely kapcsolatot hoz létre két tábla között. Az idegen kulcsok célja az adatok integritásának megőrzése, és lehetővé teszi a navigációt egy entitás két különböző példánya között.
- Összetett kulcs – két vagy több attribútuma van, amelyek lehetővé teszik egy adott rekord egyedi felismerését. Lehetséges, hogy minden oszlop önmagában nem egyedi az adatbázison belül.
- Összetett kulcs – két vagy több oszlop kombinációja, amelyek egyedileg azonosítják a táblázat sorait. Az oszlopok kombinációja garantálja az egyediséget, bár az egyedi egyediség nem garantált.
- pótkulcs – Az egyes rekordok egyedi azonosítását célzó mesterséges kulcsot helyettesítő kulcsnak nevezzük. Az ilyen típusú kulcsok egyediek, mert akkor jönnek létre, ha nincs természetes elsődleges kulcsa.
Mi az a szuperkulcs?
A szuperkulcs egy vagy több kulcsból álló csoport, amely a táblázat sorait azonosítja. A szuperkulcsok további attribútumokkal is rendelkezhetnek, amelyekre nincs szükség az egyedi azonosításhoz.
Példa:
EmpSSN | EmpNum | Empname |
---|---|---|
9812345098 | AB05 | Látható |
9876512345 | AB06 | Roslyn |
199937890 | AB07 | James |
A fenti példában az EmpSSN és az EmpNum név szuperkulcsok.
Mi az elsődleges kulcs?
ELSŐDLEGES KULCS in DBMS egy oszlop vagy oszlopcsoport egy táblázatban, amely egyedileg azonosítja a táblázat minden sorát. Az elsődleges kulcs nem lehet ismétlődő, ami azt jelenti, hogy ugyanaz az érték nem jelenhet meg többször a táblázatban. Egy táblának nem lehet több elsődleges kulcsa.
Az elsődleges kulcs meghatározásának szabályai:
- Két sornak nem lehet ugyanaz az elsődleges kulcs értéke
- Minden sorhoz rendelkeznie kell egy elsődleges kulcs értékkel.
- Az elsődleges kulcs mezője nem lehet null.
- Az elsődleges kulcs oszlopában lévő érték soha nem módosítható vagy frissíthető, ha bármely idegen kulcs az elsődleges kulcsra hivatkozik.
Példa:
A következő példában StudID
egy elsődleges kulcs.
StudID | Roll No | Az Ön neve | Vezetéknév | |
---|---|---|---|---|
1 | 11 | Tomi | Ár | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Nathan | mno@yahoo.com |
Mi az a Alternatív kulcs?
ALTERNÁLT GOMBOK egy oszlop vagy oszlopcsoport egy táblázatban, amely egyedileg azonosítja a táblázat minden sorát. Egy táblázatban több választási lehetőség is lehet az elsődleges kulcshoz, de csak egy állítható be elsődleges kulcsként. Minden olyan kulcsot, amely nem elsődleges kulcs, alternatív kulcsnak nevezzük.
Példa:
Ebben a táblázatban a StudID, Roll No, Email minősítések elsődleges kulcsokká válnak. De mivel a StudID az elsődleges kulcs, a Roll No, Email lesz az alternatív kulcs.
StudID | Roll No | Az Ön neve | Vezetéknév | |
---|---|---|---|---|
1 | 11 | Tomi | Ár | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Nathan | mno@yahoo.com |
Mi az a jelöltkulcs?
JELÖLT KULCS Az SQL-ben olyan attribútumok halmaza, amelyek egyedileg azonosítják a tábla sorait. A Candidate Key egy szuperkulcs, ismétlődő attribútumok nélkül. Az elsődleges kulcsot a jelölt kulcsok közül kell kiválasztani. Minden táblának rendelkeznie kell legalább egy jelöltkulccsal. Egy táblázatnak több kulcsjelöltje lehet, de csak egyetlen elsődleges kulcsa.
A jelölt kulcs tulajdonságai:
- Egyedi értékeket kell tartalmaznia
- Az SQL-ben szereplő kulcsjelölt kulcsnak több attribútuma is lehet
- Nem tartalmazhat null értékeket
- Az egyediség biztosítása érdekében minimális mezőket kell tartalmaznia
- Az egyes rekordok egyedi azonosítása egy táblázatban
Jelölt kulcs Példa: A megadott táblázatban a Stud ID, a Roll No és az email jelölt kulcsok, amelyek segítenek a tanulói rekord egyedi azonosításában a táblázatban.
StudID | Roll No | Az Ön neve | Vezetéknév | |
---|---|---|---|---|
1 | 11 | Tomi | Ár | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Nathan | mno@yahoo.com |
Mi az az idegen kulcs?
IDEGEN KULCS egy olyan oszlop, amely kapcsolatot hoz létre két tábla között. Az idegen kulcsok célja az adatok integritásának fenntartása, és lehetővé teszik a navigációt egy entitás két különböző példánya között. Kereszthivatkozásként működik két tábla között, mivel egy másik tábla elsődleges kulcsára hivatkozik.
Példa:
DeptCode | DeptName |
---|---|
001 | Tudomány |
002 | Angol |
005 | Számítógép |
Tanári azonosító | Fname | Lnév |
---|---|---|
B002 | David | Warner |
B017 | Sara | Joseph |
B009 | Mikrofon | Brunton |
Ebben a kulcsban a dbms példában egy iskolában két asztal van, a tanítás és a részleg. Azt azonban nem lehet megnézni, hogy melyik keresés melyik osztályon működik.
Ebben a táblázatban a Deptcode-ban lévő idegen kulcsot hozzáadva a Tanár nevéhez, kapcsolatot hozhatunk létre a két tábla között.
Tanári azonosító | DeptCode | Fname | Lnév |
---|---|---|---|
B002 | 002 | David | Warner |
B017 | 002 | Sara | Joseph |
B009 | 001 | Mikrofon | Brunton |
Ezt a koncepciót referenciaként is ismerik Integrity.
Mi az összetett kulcs?
ÖSSZETETT KULCS két vagy több attribútuma van, amelyek lehetővé teszik egy adott rekord egyedi felismerését. Lehetséges, hogy minden oszlop önmagában nem egyedi az adatbázison belül. Más oszlopokkal vagy oszlopokkal kombinálva azonban az összetett kulcsok kombinációja egyedivé válik. Az adatbázisban található összetett kulcs célja, hogy egyedileg azonosítsa a tábla minden rekordját.
Példa:
Rendelési szám | PorductID | termék név | Mennyiség |
---|---|---|---|
B005 | JAP102459 | egér | 5 |
B005 | DKT321573 | USB | 10 |
B005 | OMG446789 | LCD Monitor | 20 |
B004 | DKT321573 | USB | 15 |
B002 | OMG446789 | Lézeres nyomtató | 3 |
Ebben a példában az OrderNo és a ProductID nem lehet elsődleges kulcs, mivel nem azonosítja egyértelműen a rekordot. A rendelési azonosító és a termékazonosító összetett kulcsa azonban használható, mivel az egyedileg azonosítja az egyes rekordokat.
Mi az összetett kulcs?
ÖSSZETETT KULCS két vagy több oszlop kombinációja, amelyek egyedileg azonosítják a táblázat sorait. Az oszlopok kombinációja garantálja az egyediséget, bár az egyedi egyediség nem garantált. Ezért kombinálják őket, hogy egyedileg azonosítsák a rekordokat egy táblázatban.
Az összetett és az összetett kulcs közötti különbség az, hogy az összetett kulcs bármely része lehet idegen kulcs, de az összetett kulcs lehet, de lehet, hogy nem része az idegen kulcsnak.
Mi az a pótkulcs?
HELYETTESÍTŐ KULCSOK Egy mesterséges kulcsot, amelynek célja az egyes rekordok egyedi azonosítása, helyettesítő kulcsnak nevezzük. Ez a fajta részleges kulcs a dbms-ben egyedülálló, mert akkor jön létre, ha nincs természetes elsődleges kulcsa. Nem adnak értelmet a táblázatban szereplő adatoknak. A helyettesítő kulcs a DBMS-ben általában egy egész szám. A helyettesítő kulcs egy olyan érték, amelyet közvetlenül azelőtt generálnak, hogy a rekord beszúrásra kerülne a táblázatba.
Fname | Vezetéknév | Kezdési idő | End Time |
---|---|---|---|
Anne | Kovács | 09:00 | 18:00 |
csatlakozó | Francis | 08:00 | 17:00 |
Anna | McLean | 11:00 | 20:00 |
Látható | Willam | 14:00 | 23:00 |
A fenti példa bemutatja a különböző alkalmazottak műszakidejét. Ebben a példában helyettesítő kulcsra van szükség az egyes alkalmazottak egyedi azonosításához.
Helyettesítő kulcsok sql mikor engedélyezettek
- Egyik tulajdonság sem rendelkezik az elsődleges kulcs paraméterével.
- A táblázatban, ha az elsődleges kulcs túl nagy vagy bonyolult.
Különbség az elsődleges kulcs és az idegen kulcs között
A következő a fő különbség az elsődleges kulcs és az idegen kulcs között:
Elsődleges kulcs | Idegen kulcs |
---|---|
Segít egyedileg azonosítani egy rekordot a táblázatban. | Ez egy olyan mező a táblában, amely egy másik tábla elsődleges kulcsa. |
Az elsődleges kulcs soha nem fogad el null értékeket. | Egy idegen kulcs több null értéket is elfogadhat. |
Az elsődleges kulcs egy fürtözött index, és a DBMS-táblában lévő adatok fizikailag a fürtözött index sorrendjében vannak rendezve. | Az idegen kulcs nem hozhat létre automatikusan fürtözött vagy nem fürtözött indexet. Az idegen kulcson azonban manuálisan is létrehozhat indexet. |
Egy táblázatban szerepelhet az egyetlen elsődleges kulcs. | Egy táblázatban több idegen kulcs is lehet. |
Összegzésként
- Mi a kulcs a DBMS-ben: A kulcs a DBMS-ben egy attribútum vagy attribútumkészlet, amely segít azonosítani egy sort (tuple) egy relációban (táblázatban)
- Kulcsok be RDBMS lehetővé teszi a táblák közötti kapcsolat létrehozását és a kapcsolat azonosítását
- A DBMS-ben nyolcféle kulcs a Super, Primary, Candidate, Alternate, Foreign, Compound, Composite és Surrogate Key.
- A szuperkulcs egy vagy több kulcsból álló csoport, amely a táblázat sorait azonosítja.
- A táblázatban egy olyan oszlopot vagy oszlopcsoportot, amely segít a táblázat minden sorának egyedi azonosításában, elsődleges kulcsnak nevezzük.
- A DBMS-ben minden olyan kulcsot, amely nem elsődleges kulcs, alternatív kulcsnak nevezzük
- Az ismétlődő attribútum nélküli szuperkulcsot jelölt kulcsnak nevezzük
- Az összetett kulcs olyan kulcs, amely számos mezőt tartalmaz, amelyek lehetővé teszik egy adott rekord egyedi felismerését
- Összetett kulcsnak nevezzük azt a kulcsot, amely több attribútummal rendelkezik a tábla sorainak egyedi azonosítására
- Az egyes rekordok egyedi azonosítását célzó mesterséges kulcsot helyettesítő kulcsnak nevezzük
- Az elsődleges kulcs soha nem fogad el null értéket, míg az idegen kulcs több null értéket is elfogadhat.