Ajánlott, 2024

Szerkesztő Választása

Különbség az elsődleges kulcs és az egyedi kulcs között

Már tanulmányoztuk az előző cikkekben az adatbázisokban és sémákban használt különböző kulcsokat, nevezetesen az elsődleges kulcs és a külsõ kulcs különbségét. Ebben a cikkben megkülönböztetjük az elsődleges kulcsot és az egyedi kulcsot. Mind az elsődleges kulcs, mind az egyedi kulcs segítségével azonosítható egy azonosító, és az oszlop egy oszlopának vagy kombinációjának egyediségét érvényesíti.

Az elsődleges kulcs és az egyedi kulcs közötti lényeges különbség az, hogy az elsődleges kulcs nem fogadja el a NULL értékeket, míg a NULL értékek megengedettek az Egyedi kulcskorlátozásokban.

Összehasonlító táblázat

Az összehasonlítás alapjaElsődleges kulcsEgyedi kulcs
AlapvetőA táblázat egy sorának egyedi azonosítójaként szolgál.Egyedülállóan határozza meg azt a sort, amely nem elsődleges kulcsként van definiálva.
NULL érték elfogadásaAz elsődleges kulcs nem fogadja el a NULL értékeket.Az egyedülálló NULL értéket fogad el.
A táblázatban meghatározható kulcsok számaCsak egy elsődleges kulcsTöbb mint egy
IndexFürtözött indexet hoz létreNem csoportosított indexet hoz létre

Az elsődleges kulcs meghatározása

Egy oszlopot a táblázat elsődleges kulcsaként lehet hívni, ha egyedileg azonosítja a táblázat minden sorát (sorát). Ez biztosítja az asztali integritási korlátokat. Egy táblázat csak egy elsődleges kulcsot engedélyez. Az elsődleges kulcs nem fogadja el az ismétlődő és a NULL értékeket. Az elsődleges kulcsot óvatosan választják ki, ahol a változások ritkán fordulhatnak elő, ami azt jelenti, hogy egy táblázat elsődleges kulcsja nagyon ritkán változik.

Egy táblázat segítségével értsük meg az elsődleges kulcs fogalmát. Itt olyan táblázatot hozunk létre, melynek neve: Student table, amely olyan attribútumokkal rendelkezik, mint a Roll_number, Name, Batch, Phone_number, Citizen_ID.

Az adott példában az attribútumszám számának nem lehet azonos és NULL értéke, mert minden egyetemi hallgató, egy egyedi Roll_number-vel. Két diáknak nincs azonos Roll_numberje, és a táblázat minden sora egyedileg azonosítható a diákok számával. Tehát ebben az esetben a Roll_number attribútumot elsődleges kulcsként tudjuk létrehozni.

Az elsődleges kulcsot idegen kulcs segítségével lehet hivatkozni. Egy egyedi csoportosított indexet hoz létre az asztalon. A fürtözött indexben az adatsorokat a táblázatban vagy a nézetekben a kulcsértékei alapján rendezik és tárolják. A táblázatban csak egy fürtözött index lehet, ennek oka, hogy egy táblázatban lévő adatsorok csak egy sorrendben rendezhetők.

Egyedi kulcs meghatározása

Az elsődleges kulcshoz hasonlóan az Egyedülálló kulcskorlátozások egyedileg azonosítják az egyedi sorozatot egy kapcsolatban. De vannak bizonyos különbségek közöttük. A táblázat egynél több egyedi kulcsot tartalmazhat. Az egyedi kulcskorlátozások csak egy NULL értéket fogadhatnak el egy oszlopra.

Megértjük ezt a hasonló példával, ahol volt egy Diáktábla Roll_number, Name, Batch, Phone_number és Citizen_ID attribútumokkal. A Roll szám attribútumot az elsődleges kulcshoz rendeli.

Itt a Citizen_ID egyedi korlátozásokkal rendelhető, ahol a Citizen_ID oszlop minden egyes bejegyzésének egyedinek kell lennie, nem másolnia, mert minden ország állampolgárának egyedi azonosító számmal kell rendelkeznie. De ha egy diák egy másik országból költözik, abban az esetben nem lenne a Citizen_ID és a bejegyzés NULL-értékkel bírhat, mivel az NULL-t az egyedi korlátozásban megengedik.

Egyedülálló korlátozásokat is az idegen kulcs hivatkozik. Ez akkor használható, ha valaki egy olyan oszlopra és oszlopcsoportra kényszeríti a korlátozásokat, amely nem elsődleges kulcs. Ellentétben az elsődleges kulccsal, létrehozza a nem fürtözött indexet . A nem csoportosított indexeknek az adatsoroktól eltérő szerkezete van. Minden egyes kulcs-értékbejegyzés a kulcsértéket tartalmazó adatsorra mutat, így mutatókat használ.

A legfontosabb különbségek az elsődleges kulcs és az egyedi kulcs között

  1. Ha az attribútum elsődleges kulcsnak minősül, akkor nem fogadja el a NULL értékeket. Másrészről, ha egy egyedülállónak nevezett attribútum elfogad egy NULL értéket.
  2. A táblázat csak elsődleges kulcsot tartalmazhat, míg az asztalon több egyedi kényszer is lehet.
  3. A fürtözött index automatikusan létrejön egy elsődleges kulcs definiálásakor. Ezzel szemben az Unique kulcs generálja a nem fürtözött indexet.

Következtetés

Az elsődleges kulcs és az Egyedi kulcs mind a táblázat egy sorának egyedi azonosítóját szolgálja, egy oszlopban vagy oszlopcsoportban található egyedi értékekkel. Ezek a kulcsfontosságú korlátozások jelentősen megkülönböztethetők, ahol minden táblázat legfeljebb egy elsődleges kulcsot tartalmazhat, míg a táblázat több egyedi kulcsot tartalmazhat, amelyek nem elsődlegesek.

Top