Priporočena, 2021

Izbira Urednika

Razlika med primarnim ključem in edinstvenim ključem

V prejšnjih člankih smo že preučili različne tipe ključev, ki se uporabljajo v podatkovni bazi in shemi, in sicer razlika med primarnim ključem in tujim ključem. V tem članku razlikujemo primarni ključ in edinstven ključ. Oba primarnega ključa in edinstvenega ključa se uporabljata za identifikacijo torka enolično in uveljavlja edinstvenost v stolpcu ali kombinaciji stolpca.

Bistvena razlika med primarnim ključem in edinstvenim ključem je, da primarni ključ ne sprejema vrednosti NULL, medtem ko so vrednosti NULL dovoljene znotraj omejitev Unique key.

Primerjalna tabela

Podlaga za primerjavoPrimarni ključEdinstven ključ
OsnovnoUporablja se kot edinstveni identifikator za vsako vrstico v tabeli.Prav tako edinstveno določa vrstico, ki ni definirana kot primarni ključ.
Sprejem vrednosti NULLPrimarni ključ ne bo sprejel vrednosti NULL.Unique bo sprejel vrednost NULL.
Število ključev, ki jih je mogoče določiti v tabeliSamo en primarni ključVeč kot en
IndeksUstvari indeks z gručamiUstvari indeks brez gruče

Opredelitev primarnega ključa

Stolpec lahko imenujemo primarni ključ njegove tabele, če enolično identificira vsako zaporedje (vrstico) v tej tabeli. Za tabelo uveljavlja omejitve integritete. V tabeli je dovoljen samo en primarni ključ. Primarni ključ ne sprejema podvojenih in NULL vrednosti. Primarni ključ je izbran previdno, kjer se spremembe lahko pojavijo redko, kar pomeni, da se primarni ključ v tabeli spreminja zelo redko.

Razumimo pojem primarnega ključa s pomočjo tabele. Tu ustvarjamo tabelo, imenovano kot tabela študentov, ki ima atribute, kot so število znakov, ime, serija, številka_ telefona, državljan_ID.

V danem primeru številka atributnega zvitka nikoli ne sme imeti enake in NULL vrednosti, ker je vsak študent, ki se je vpisal na univerzo z edinstveno številko Roll_number. Noben od dveh študentov ne more imeti iste številke Roll_number, in vsaka vrstica v tabeli je enolično označena s številko študentskega zvitka. Tako lahko atribut Roll_number v tem primeru uporabimo kot primarni ključ.

Na primarni ključ se lahko sklicuje s tujim ključem. Na tabeli ustvari edinstven indeks gruče . V indeksu z gručami so podatkovne vrstice razvrščene in shranjene v tabeli ali pogledih na podlagi njenih ključnih vrednosti. V tabeli je lahko samo en indeks z gručami, razlog za to je, da se vrstice podatkov v tabeli lahko razvrstijo v samo enem vrstnem redu.

Opredelitev edinstvenega ključa

Podobno kot pri primarnem ključu, tudi omejitve Unique ključev identificirajo posamezno zaporedje v razmerju. Vendar pa obstajajo nekatere razlike med njimi. Tabela lahko vsebuje več kot en edinstven ključ. Edinstvene omejitve ključev lahko sprejmejo samo eno vrednost NULL za stolpec.

To bomo razumeli s podobnim primerom, kjer smo imeli Studentovo tabelo z atributi Roll_number, Name, Batch, Phone_number in Citizen_ID. Atribut Roll number je dodeljen s primarnim ključem.

Tukaj se lahko Citizen_ID dodeli edinstvene omejitve, pri čemer mora biti vsak vnos v stolpcu Citizen_ID edinstven, ne podvajati, ker mora vsak državljan države imeti svojo enotno identifikacijsko številko. Toda, če študent migrira iz druge države, v tem primeru ne bi imel Citizen_ID in vnos bi lahko imel vrednost NULL, ker je v edinstveni omejitvi dovoljeno eno NULL.

Tuji ključ se sklicuje tudi na edinstvene omejitve. Uporabi se lahko, ko nekdo želi uveljaviti omejitve v stolpcu in skupini stolpcev, ki ni primarni ključ. Za razliko od primarnega ključa ustvari indeks brez gruče . Neklasificirani indeksi imajo ločeno strukturo od podatkovnih vrstic. Vsak vnos ključa-vrednosti v njej kaže na podatkovno vrstico, ki vsebuje vrednost ključa, zato uporablja kazalce.

Ključne razlike med primarnim ključem in edinstvenim ključem

  1. Ko atribut, deklariran kot primarni ključ, ne bo sprejel vrednosti NULL. Po drugi strani pa lahko atribut, ki je deklariran kot Unique, sprejme eno vrednost NULL.
  2. Tabela lahko ima samo primarni ključ, medtem ko lahko na tabeli obstaja več edinstvenih omejitev.
  3. Razvrščeni indeks se samodejno ustvari, ko je definiran primarni ključ. V nasprotju s tem pa unikatni ključ ustvari neklasiran indeks.

Zaključek

Primarni ključ in edinstveni ključ služita namenu edinstvenega identifikatorja za vrstice tabele z edinstvenimi vrednostmi v stolpcu ali skupini stolpcev. Te ključne omejitve se znatno razlikujejo, kjer ima vsaka tabela lahko največ en primarni ključ, medtem ko lahko tabela vsebuje več edinstvenih ključev, ki niso primarni.

Top