Põhierinevus: primaarvõti ei saa nullit lubada ja seda saab luua ainult üks kord tabelis. Unikaalne võti võimaldab nullit ja seda saab tabelis mitu korda luua. Klahvid mängivad andmete salvestamisel ja allalaadimisel olulist rolli.
Microsoft SQL on Microsofti väljatöötatud relatsiooniandmebaasi haldamise süsteem. Selle põhifunktsioon hõlmab andmete salvestamist ja allalaadimist, kui seda taotlevad teised sama rakenduse või võrgu erinevad arvutid töötavad tarkvararakendused.
Klahvid mängivad andmete salvestamisel ja allalaadimisel olulist rolli. Serverisse salvestatud andmed on veergude tabelite seeria. Need veerud salvestavad erinevat tüüpi teavet ja neid saab laadida juhiseid kasutades. Esmane võti ja ainulaadne võti on kahte tüüpi võtmeid, mis määravad, kuidas andmed süsteemi salvestatakse.
SQL Serveri andmebaasis olevad objektid on korraldatud tabelite ja indeksitena ning need salvestatakse 8-KB lehtede kogumina. Klahvid aitavad kindlaks teha, kus andmebaasis andmed salvestatakse. Mõlemad võtmed erinevad üksteisest. Kuid esmane võti on unikaalse võtme tüüp. Samuti on need funktsioonides sarnased, kuid pakuvad erinevaid funktsioone.
Esmane võtmed on määratud PRIMARY KEY piiranguga ja neid saab määrata tabeli loomise ajal. SQL Standardis võivad primaarvõtmed koosneda ühest või mitmest veerust. Iga primaarses võtmes osalev veerg määratletakse kaudselt kui NOT NULL. Esmane võti pakub kolme põhifunktsiooni:
Igal tabelil ei ole rohkem kui ühte esmast võtit.
Mõnes andmebaasisüsteemis loob primaarne võti vaikimisi klastrite indeksi.
Unikaalsed võtmed on sarnased primaarvõtmetega ja neid saab määratleda tabeli loomise ajal. Unikaalsed võtmed võimaldavad ka andmeid või ridu mitte üheski teises tabelis korrata. 3 põhifunktsiooni, mida unikaalne võtmepakkumine sisaldab:
Unikaalne võti võib lubada nullit, kuid ainult üks (unikaalne võti on võimalik määrata nullide lubavatele veergudele).
Igal tabelil on mitu unikaalset võtit.
Mõnes andmebaasisüsteemis loob unikaalne võti vaikimisi indekseerimata indeksi.
Esmase võtme ja unikaalse võtme võrdlus:
Esmane võti | Unikaalne võti | |
Määratlus | Esmane võti on unikaalse võtme tüüp. See on võti, mis lubab migreeruda teistesse üksustesse, et määratleda üksuste vahelisi suhteid. | Unikaalne võti on null, üks või mitu atribuuti. Nende atribuutide väärtus (id) peab olema iga suhe (rida) puhul kordumatu. Mistahes tuple unikaalsete võtme atribuutide väärtust või väärtuste kombinatsiooni ei tohiks korrata ühelgi teisel korrel selles suhetes. |
Kasutatakse | Relatsioonandmebaaside haldussüsteemid nagu MySQL, Oracle jne. | Relatsioonandmebaaside haldussüsteemid nagu MySQL, Oracle jne. |
Null väärtused | Ei aktsepteeri nullväärtusi | Vastab tabelis ainult ühele nullväärtusele |
Indeksi tüüp | Kas klastrite indeks ja andmebaasi tabelis olevad andmed on füüsiliselt järjestatud klastrite indeksis | Kas ainulaadne mitteklastrite indeks |
Lubatud võtmete arv | Tabelis on ainult üks esmane võti | Tabelis võib olla rohkem kui üks unikaalne võti |
Kabriolett | Võib teha võõrvõtmeks teise tabelisse | Võib teha võõrvõtmeks teise tabelisse |