Skirtumas Tarp Pirminio Rakto Ir Unikalaus Rakto

Skirtumas Tarp Pirminio Rakto Ir Unikalaus Rakto
Skirtumas Tarp Pirminio Rakto Ir Unikalaus Rakto

Video: Skirtumas Tarp Pirminio Rakto Ir Unikalaus Rakto

Video: Skirtumas Tarp Pirminio Rakto Ir Unikalaus Rakto
Video: Lauruko katukas 2024, Balandis
Anonim

Pagrindinis raktas ir unikalus raktas

Stulpelis arba stulpelių rinkinys, kurį galima naudoti norint identifikuoti arba pasiekti duomenų bazės eilutę ar eilučių rinkinį, vadinamas raktu. Unikalus raktas yra raktas, kuris gali unikaliai identifikuoti eilutę lentelėje reliacinių duomenų bazių kontekste. Unikalų raktą sudaro vienas stulpelis arba stulpelių rinkinys. Pirminis raktas taip pat yra lentelės stulpelių derinys, unikaliai identifikuojantis eilutę. Bet tai laikoma ypatingu unikalaus rakto atveju.

Kas yra unikalus raktas?

Kaip minėta anksčiau, unikalus raktas yra vienas stulpelis arba stulpelių rinkinys, kuris gali unikaliai identifikuoti eilutę lentelėje. Taigi, unikalus raktas yra suvaržytas taip, kad nė viena jo reikšmė nebūtų lygi. Viena svarbi savybė yra tai, kad unikalūs raktai nevykdo apribojimo „NE NULL“. Kadangi NULL reiškia vertės trūkumą, jei dviejose eilutėse stulpelyje yra NULL, tai nereiškia, kad vertės yra vienodos. Stulpelis, apibrėžtas kaip unikalus raktas, leidžia tik vieną NULL reikšmę tame stulpelyje. Tada tai gali būti naudojama unikaliai identifikuoti tą konkrečią eilutę. Pavyzdžiui, lentelėje, kurioje yra informacija apie studentą, studento pažymėjimą galima apibrėžti kaip unikalų raktą. Kadangi du studentai negali turėti to paties asmens tapatybės, jis unikaliai identifikuoja vieną studentą. Taigi studento ID stulpelis atitinka visas unikalaus rakto savybes. Atsižvelgiant į duomenų bazės dizainą,lentelėje gali būti daugiau nei vienas unikalus raktas.

Kas yra pagrindinis raktas?

Pagrindinis raktas taip pat yra stulpelis arba stulpelių derinys, unikaliai apibrėžiantis eilę reliacinės duomenų bazės lentelėje. Lentelėje gali būti daugiausia vienas pagrindinis raktas. Pirminis raktas įgyvendina numanomą NOT NULL apribojimą. Taigi stulpelyje, kuris apibrėžiamas kaip pagrindinis raktas, negali būti NULL reikšmių. Pirminis raktas gali būti įprastas lentelės atributas, kuris, kaip garantuojamas, yra unikalus, pvz., Socialinio draudimo numeris, arba gali būti unikali reikšmė, kurią sukuria duomenų bazės valdymo sistema, pvz., Visuotinai unikalus identifikatorius (GUID) „Microsoft SQL Server“. Pagrindiniai raktai apibrėžiami naudojant ANSI SQL standarto PRIMARY KEY apribojimą. Pirminį raktą taip pat galima apibrėžti kuriant lentelę. SQL leidžia pirminį raktą sudaryti iš vieno ar daugiau stulpelių, o kiekvienas stulpelis, kuris yra įtrauktas į pirminį raktą, yra netiesiogiai apibrėžtas kaip NE NULL. Tačiau kai kurioms duomenų bazių valdymo sistemoms reikia, kad pirminio rakto stulpeliai būtų aiškiai NEBŪTINI.

Skirtumas tarp pirminio rakto ir unikalaus rakto

Nors pagrindinis ir unikalus raktas yra vienas ar daugiau stulpelių, kurie gali unikaliai identifikuoti lentelės eilutę, jie turi keletą svarbių skirtumų. Svarbiausia, kad lentelė gali turėti tik vieną pagrindinį raktą, o ji gali turėti daugiau nei vieną unikalų raktą. Pirminis raktas gali būti laikomas specialiu unikalaus rakto atveju. Kitas skirtumas yra tas, kad pirminiai raktai turi numanomą „NOT NULL“apribojimą, o unikalus raktas neturi tokio apribojimo. Todėl unikalių raktų stulpeliuose gali būti NULL reikšmių arba jų nėra, tačiau pirminių raktų stulpeliuose negali būti NULL reikšmių.

Rekomenduojama: