logo

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

A MySQL kulcsai egy vagy több tábla közötti kapcsolat létrehozására használt oszlop vagy oszlopkészlet. A rekordok táblából való eléréséhez is használhatók. Mindkét kulcs garantált egyediséget biztosít egy táblázatban vagy relációban egy oszlophoz vagy oszlopkészlethez. A fő különbség köztük az, hogy az elsődleges kulcs azonosítja a tábla minden rekordját, az egyedi kulcs pedig megakadályozza az ismétlődő bejegyzéseket egy oszlopban, kivéve a NULL értéket. . Ebben a cikkben összehasonlítjuk az elsődleges és az egyedi kulcsok közötti lényeges különbségeket különböző paraméterek alapján. Az összehasonlítás előtt röviden megvitatjuk ezeket a kulcsokat.

tojson java
Elsődleges kulcs vs egyedi kulcs

Mi az elsődleges kulcs?

Az elsődleges kulcs a egyedi vagy nem nulla kulcs, amely egyedileg azonosítja az adott táblában vagy relációban lévő minden rekordot. Az elsődleges kulcs oszlopa nem tárolhat ismétlődő értékeket, ami azt jelenti, hogy az elsődleges kulcs oszlopértékei mindig egyediek. Más néven a minimális szuperkulcs ; ezért egyetlen kapcsolatban sem adhatunk meg egynél több elsődleges kulcsot. Egy tábla elsődleges kulcs oszlopára hivatkozhat egy másik tábla idegen kulcs oszlopa.

Például , van egy nevű táblázatunk hallgatók olyan attribútumokkal, mint a Stud_ID, Roll_No, Name, Mobile és Email.

Elsődleges kulcs vs egyedi kulcs

Itt csak a Roll_No oszlop soha nem tartalmazhat azonos és NULL értéket. Tudjuk, hogy minden diáknak van egy egyedi tekercsszáma. Ezért két tanulónak soha nem lehet ugyanaz a névjegyzéke. Ez a szolgáltatás segít egyedileg azonosítani az adatbázisban lévő minden egyes rekordot. Ezért a Roll_No attribútumot elsődleges kulccsá tehetjük.

Az elsődleges kulcs jellemzői

Az alábbiak a legfontosabb elsődleges funkciók:

string formázás java
  • Az elsődleges kulcs oszlop nem tartalmazhat ismétlődő értékeket.
  • Az elsődleges kulcs a tábla entitásintegritását valósítja meg.
  • Egy táblának nem lehet több elsődleges kulcsoszlopa.
  • Az elsődleges kulcsot egy vagy több táblamezőből is elkészíthetjük.
  • Az elsődleges kulcs oszlopának NOT NULL megszorításokkal kell rendelkeznie.

Mi az egyedi kulcs?

A egyedi kulcs egy tábla egyetlen oszlopa vagy oszlopkombinációja az adatbázisrekordok egyedi azonosítására. Egyedülálló kulcs megakadályozza a tárolástól duplikált értékek az oszlopban. Egy táblázat több egyedi kulcsoszlopot is tartalmazhat, ellentétben az elsődleges kulcs oszlopával. Ez a kulcs hasonló az elsődleges kulcshoz, azzal a különbséggel, hogy egy NULL érték tárolható az egyedi kulcs oszlopban. Az egyedi kulcsot is hívják egyedi korlátok és egy másik tábla idegen kulcsa hivatkozhat rá.

Például , tekintsük ugyanazt a nevű táblázatot hallgatók olyan attribútumokkal, mint a Stud_ID, Roll_No, Name, Mobile és Email.

Elsődleges kulcs vs egyedi kulcs

Itt Stud_ID egyedi megkötésként rendelhető hozzá, mert minden tanulónak egyedi azonosító számmal kell rendelkeznie. Ha egy diák főiskolát vált, akkor nem lesz diákigazolványa. Ebben az esetben a bejegyzés tartalmazhat a NULLA értéket, mert egy egyedi kulcskényszer lehetővé teszi a NULL tárolását, de ennek csak egynek kell lennie.

Az egyedi kulcs jellemzői

Íme a legfontosabb egyedi jellemzők:

  • Az egyedi kulcsot egy vagy több táblamezőből összeállíthatjuk.
  • Egy táblázat több egyedi kulcsoszlopot is meghatározhat.
  • Alapértelmezés szerint az egyedi kulcs a nem fürtözött egyedi indexekben található.
  • Az egyedi kényszeroszlop NULL értéket tárolhat, de oszloponként csak egy NULL megengedett.
  • Az idegen kulcs hivatkozhat az egyedi megszorításra a tábla egyediségének megőrzésében.

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

A következő pontok ismertetik az elsődleges és a jelölt kulcsok közötti fő különbségeket:

  • Az elsődleges kulcs egy tábla egy vagy több mezőjét alkothatja a tábla rekordjainak egyedi azonosítására. Másrészt egy egyedi kulcs megakadályozza, hogy két sorban ismétlődő bejegyzések legyenek egy oszlopban.
  • Egy táblának nem lehet több elsődleges kulcsa egy relációs adatbázisban, míg táblánként több egyedi kulcs is lehet.
  • Az elsődleges kulcs oszlopa nem tartalmazhat NULL értékeket, míg az egyedi kulcsok tartalmazhatnak NULL értékeket, de csak egy NULL megengedett egy táblázatban.
  • Az elsődleges kulcsnak egyedinek kell lennie, de az egyedi kulcs nem feltétlenül lehet elsődleges kulcs.
  • Az elsődleges kulcs alapértelmezés szerint egy fürtözött index, ahol az adatok fizikailag a szekvenciális indexben vannak rendezve. Ezzel szemben az egyedi kulcs egy egyedi, nem fürtözött index.
  • Az elsődleges kulcs az entitás integritását valósítja meg, míg az egyedi kulcs az egyedi adatokat kényszeríti ki.

Elsődleges kulcs és egyedi kulcs összehasonlító táblázat

Az alábbi összehasonlító táblázat gyorsan elmagyarázza ezek főbb különbségeit:

megtörni a java-t
Összehasonlítási alap Elsődleges kulcs Egyedi kulcs
Alapvető Az elsődleges kulcs egyedi azonosítóként használatos a tábla minden rekordjához. Az egyedi kulcs a rekordok egyedi azonosítója is, ha az elsődleges kulcs nem szerepel a táblázatban.
NULLA Nem tárolhatunk NULL értékeket az elsődleges kulcs oszlopban. NULL értéket tárolhatunk az egyedi kulcs oszlopban, de csak egy NULL megengedett.
Célja Kikényszeríti az entitás integritását. Egyedi adatokat kényszerít ki.
Index Az elsődleges kulcs alapértelmezés szerint fürtözött indexet hoz létre. Az egyedi kulcs alapértelmezés szerint nem fürtözött indexet hoz létre.
Kulcs száma Minden tábla csak egy elsődleges kulcsot támogat. Egy táblázatnak több egyedi kulcsa is lehet.
Értékmódosítás Az elsődleges kulcs értékeit nem tudjuk módosítani vagy törölni. Módosíthatjuk az egyedi kulcsoszlop értékeket.
Felhasználások A táblázat minden rekordjának azonosítására szolgál. Megakadályozza az ismétlődő bejegyzések tárolását egy oszlopban, kivéve a NULL értéket.
Szintaxis Létrehozhatunk egy elsődleges kulcs oszlopot a táblázatban az alábbi szintaxis használatával:
CREATE TABLE Employee ( Id INT PRIMARY KEY, name VARCHAR(150), address VARCHAR(250) )
A táblázatban egyedi kulcsoszlopot hozhatunk létre az alábbi szintaxis használatával:
CREATE TABLE Person ( Id INT UNIQUE, name VARCHAR(150), address VARCHAR(250) )

Következtetés

Ebben a cikkben összehasonlítottuk az elsődleges kulcsot és az egyedi kulcs megszorításait. Itt arra a következtetésre jutottunk, hogy az egyedi kulcs akkor hasznos, ha nem akarjuk, hogy az oszlopok ismétlődő értékeket tartalmazzanak. Az elsődleges kulcs pedig akkor hasznos, ha nem akarunk NULL értéket tartani a táblázatban. Ideális lehet az is, ha egy másik táblában van egy idegen kulcsunk a táblák közötti kapcsolat létrehozására.