Nii esmane kui ka unikaalne võti on relatsiooniandmebaasis unikaalsed võtmed, mis tagavad veeru või veerukomplekti väärtuste unikaalsuse. Primaarvõtme piirangu sees on juba eelnevalt määratletud unikaalne võtmepiirang. Kui primaarvõtit kasutatakse eriti iga tabeli kirje tuvastamiseks, kasutatakse unikaalset võtit seevastu veeru dubleerivate kirjete vältimiseks, välja arvatud nullkirje. Kuid mõlemad võtmed võivad sisaldada rohkem kui ainult ühte veergu antud tabelist ja mõlemad mängivad andmete salvestamisel ja hankimisel üliolulist rolli. Andmed on veergude tabeliseeria ja need veerud sisaldavad igat tüüpi teavet, millele on lisaks juhiste abil juurde pääseda või neist juurde pääseda. Siin tulevad võtmed pildi juurde. Primaarvõti ja kordumatu võti on kaks ainulaadset võtit, mis määravad, kuidas andmeid süsteemis säilitada.
Primaarvõti (käib ka peamise märksõna järgi) on ainulaadne võti relatsiooniandmebaasis, mis identifitseerib andmebaasi tabeli iga kirje. See on omamoodi kordumatu tunnus, näiteks inimese sotsiaalkindlustuse number, telefoninumber, juhiloa number või sõiduki numbrimärk. Andmebaasis peab olema ainult üks primaarvõti.
Andmebaasi tabel sisaldab veergu või veerukomplekti, mis sisaldab väärtusi, mis identifitseerivad tabeli iga rea üheselt. Seda veergu või veergude komplekti nimetatakse tabeli primaarvõtmeks, mis peab sisaldama kordumatuid väärtusi ega tohi sisaldada nullväärtusi. Ilma primaarvõtmeta relatsiooniandmebaas ei tööta.
Primaarvõti luuakse, määratledes tabeli loomisel või muutmisel primaarse võtme piirangu. SQL-i standardis võib primaarvõti sisaldada ühte või mitut veergu, kusjuures iga veerg on vaikimisi määratletud kui MITTE Null. Kui määratlete PRIMARY KEY-piirangu rohkem kui ühes veerus, võib tulemuseks olla väärtuste dubleerimine ühes veerus, sellepärast peab iga väärtuste kombinatsioon olema kõigi veergude jaoks ainulaadne.
Unikaalne võti on tabeli ühe või mitme veeru / välja komplekt, mis identifitseerib unikaalselt kirje andmebaasi tabelis. UNIQUE KEY kitsendus tagab, et kõik veeru väärtused on andmebaasis ainulaadsed. Nii nagu primaarvõti, võib ka unikaalne võti koosneda rohkem kui ühest veerust. Kuid ainulaadne võti võib aktsepteerida ainult ühte nullväärtust. Ühelgi kahel real pole andmebaasi tabelis samu väärtusi.
Unikaalne võti on üsna sarnane primaarvõtmega ja seda saab määratleda tabeli loomisel. Kui veerg või veerukomplekt on relatsiooniandmebaasisüsteemis tähistatud ainulaadsena, kontrollib see enne piirangu määramist väärtuste terviklikkust, et takistada kahel dokumendil ühesuguste väärtuste olemasolu ühes veerus.
UNIQUE on piirang mitte-PRIMARY KEY veerule, mis iseloomustab järgmist:
Esmane võti on omamoodi ainulaadne võtme identifikaator, mis tuvastab andmebaasi tabeli rea üheselt, samal ajal kui unikaalne võti tuvastab kõik tabelis olevad võimalikud read, mitte ainult olemasolevad read.
Primaarvõtit kasutatakse andmebaasi tabeli kirje identifitseerimiseks, samal ajal kui unikaalset võtit kasutatakse veeru dubleerivate väärtuste vältimiseks, välja arvatud nullkirje.
Esmane võti loob vaikimisi rühmitatud unikaalse indeksi, unikaalne võti on vaikimisi unikaalne rühmitamata register andmebaasi tabelis.
Primaarvõti ei saa andmebaasi tabelis aktsepteerida NULL-i väärtusi, samal ajal kui unikaalne võti võib vastu võtta tabelis ainult ühte NULL-i väärtust.
Laual võib olla ainult üks ja ainult üks esmane võti, kuid andmebaasisüsteemis võib tabelis olla mitu unikaalset võtit..
Esmane võti | Unikaalne võti |
Primaarvõtit kasutatakse andmebaasi tabeli kirje / rea unikaalseks tuvastamiseks. | Ainulaadset võtit kasutatakse kõigi tabelis olevate võimalike ridade ja mitte ainult olemasolevate ridade ainulaadseks tuvastamiseks. |
See ei aktsepteeri NULL väärtusi. | See võib tabelis aktsepteerida ainult ühte NULL-i väärtust. |
Vaikimisi on see rühmitatud indeks, mis tähendab, et andmed on järjestatud rühmitatud indeksjärjestuses. | Vaikimisi on see ainulaadne klastriteta register. |
Tabelis võib olla ainult üks primaarvõti. | Tabelis võib olla mitu unikaalset võtit. |
Primaarvõti määratletakse PRIMARY KEY piirangu abil. | Ainulaadset võtit kasutatakse ainulaadse piirangu abil. |
Kasutatakse tabeli rea tuvastamiseks. | Kasutatakse veeru dubleerivate väärtuste vältimiseks. |
Põhivõtme väärtusi ei saa muuta ega kustutada. | Ainulaadseid võtmeväärtusi saab muuta. |