Pagrindinis ir unikalus raktai yra unikalūs raktai reliacinėje duomenų bazėje, užtikrinantys stulpelio ar stulpelių rinkinio verčių unikalumą. Pagrindiniame rakto apribojime jau yra iš anksto apibrėžtas unikalus rakto apribojimas. Pirminis raktas yra ypač naudojamas kiekvienam lentelės įrašui identifikuoti, tačiau unikalus raktas yra naudojamas siekiant išvengti pasikartojančių įrašų stulpelyje, išskyrus negaliojantį įrašą. Tačiau abiejuose klavišuose gali būti ne tik vienas stulpelis iš duotos lentelės, ir jie abu vaidina lemiamą vaidmenį saugojant ir gaunant duomenis. Duomenys yra lentelių serija su stulpeliais. Šie stulpeliai kaupia visų tipų informaciją, kurią toliau galima pasiekti arba gauti naudojantis instrukcijomis. Čia yra nuotraukos raktai. Pagrindinis raktas ir unikalus raktas yra du unikalūs raktai, nustatantys, kaip duomenys turėtų būti saugomi sistemoje.
Pagrindinis raktas (taip pat eina pagal pagrindinį raktinį žodį) yra unikalus raktas reliacinėje duomenų bazėje, identifikuojančioje kiekvieną duomenų bazės lentelės įrašą. Tai tarsi unikalus identifikatorius, pavyzdžiui, asmens socialinio draudimo numeris, telefono numeris, vairuotojo pažymėjimo numeris arba transporto priemonės valstybinio numerio ženklas. Duomenų bazėje turi būti tik vienas pagrindinis raktas.
Duomenų bazės lentelėje yra stulpelis arba stulpelių rinkinys, kuriame yra reikšmių, kurios unikaliai identifikuoja kiekvieną lentelės eilutę. Šis stulpelis arba stulpelių rinkinys yra vadinamas pirminiu lentelės raktu, kuriame turi būti unikalios vertės, ir kuriame negali būti nulinių verčių. Be pirminio rakto, reliacinė duomenų bazė neveiks.
Pagrindinis raktas yra sukuriamas apibrėžiant PRIMARY KEY apribojimą kuriant ar keičiant lentelę. SQL standarte pirminį raktą gali sudaryti vienas ar keli stulpeliai, tuo tarpu kiekvienas stulpelis yra netiesiogiai apibrėžtas kaip NE NULL. Jei apibrėžsite PRIMARY KEY apribojimą daugiau nei viename stulpelyje, tai gali reikšti, kad vertės dubliuojasi viename stulpelyje, todėl kiekvienas verčių derinys turi būti unikalus visiems stulpeliams..
Unikalus raktas yra vieno ar daugiau lentelės stulpelių / laukų rinkinys, kuris unikaliai identifikuoja įrašą duomenų bazės lentelėje. UNIKALIOJO KEY apribojimas užtikrina, kad visos stulpelio vertės duomenų bazėje būtų unikalios. Kaip ir pirminį raktą, unikalų raktą taip pat gali sudaryti daugiau nei vienas stulpelis. Tačiau unikalus raktas gali priimti tik vieną nulinę vertę. Nei dviejose eilutėse duomenų bazės lentelėje yra tos pačios vertės.
Unikalus raktas yra gana panašus į pirminį raktą ir gali būti apibrėžtas kuriant lentelę. Kai stulpelis ar stulpelių rinkinys reliacinėje duomenų bazių sistemoje pažymimas kaip unikalus, prieš priskirdamas apribojimą jis patikrina verčių vientisumą, kad būtų išvengta dviejų įrašų tapačių reikšmių tam tikrame stulpelyje..
UNIKALUS yra suvaržymas stulpelyje, kuris nėra PRIMARY RAKTAS, apibūdinantis šiuos dalykus:
Pagrindinis raktas yra tarsi unikalus rakto identifikatorius, kuris unikaliai identifikuoja eilutę duomenų bazės lentelėje, tuo tarpu unikalus raktas identifikuoja visas įmanomas eilutes, esančias lentelėje, o ne tik esamas eilutes..
Pirminis raktas yra naudojamas įrašui duomenų bazės lentelėje identifikuoti, tuo tarpu unikalus raktas yra naudojamas siekiant išvengti dubliuotų verčių stulpelyje, išskyrus nulinį įrašą..
Pagrindinis raktas pagal nutylėjimą sukuria sugrupuotą unikalų rodyklę, o unikalus raktas yra unikalus nesugrupuotas rodyklė duomenų bazės lentelėje pagal numatytuosius nustatymus.
Pagrindinis raktas negali priimti NULL reikšmių duomenų bazės lentelėje, tuo tarpu unikalus raktas gali priimti tik vieną NULL reikšmę lentelėje.
Lentelėje gali būti tik vienas ir tik vienas pagrindinis raktas, tačiau duomenų bazės sistemoje gali būti keli unikalūs lentelės raktai.
Pirminis raktas | Unikalus raktas |
Pagrindinis raktas naudojamas norint unikaliai identifikuoti įrašą / eilutę duomenų bazės lentelėje. | Unikalus raktas naudojamas visoms galimoms lentelės eilutėms identifikuoti, o ne tik esamoms eilutėms. |
Jis nepriima NULL verčių. | Jis gali priimti tik vieną NULL reikšmę lentelėje. |
Pagal nutylėjimą tai yra sugrupuotas rodyklė, tai reiškia, kad duomenys yra organizuojami sugrupuotų rodyklių seka. | Pagal numatytuosius nustatymus tai yra unikalus neklasifikuotas rodyklė. |
Lentelėje gali būti tik vienas pagrindinis raktas. | Lentelėje gali būti keli unikalūs raktai. |
Pagrindinis raktas nustatomas naudojant PRIMARY KEY apribojimą. | Unikalus raktas vaizduojamas naudojant UNIKALIĄ suvaržymą. |
Naudojamas lentelės eilutei identifikuoti. | Naudojamas norint išvengti dvigubų verčių stulpelyje. |
Pirminių raktų verčių negalima pakeisti ar ištrinti. | Galima pakeisti unikalias raktų reikšmes. |