DBVS raktai: kandidatas, super, pagrindinis, užsienietis (pavyzdys)

Kas yra DBVS raktai?

Raktai DBVS yra atributas arba atributų rinkinys, kuris padeda jums nustatyti eilutę (paketą) santykyje (lentelėje). Jie leidžia jums rasti ryšį tarp dviejų lentelių. Raktai padeda unikaliai identifikuoti eilutę lentelėje, derinant vieną ar daugiau tos lentelės stulpelių. Raktas taip pat naudingas norint rasti unikalų įrašą ar eilutę iš lentelės. Duomenų bazės raktas taip pat naudingas norint rasti unikalų įrašą ar eilutę iš lentelės.

Pavyzdys:

Darbuotojo ID Pirmas vardas Pavardė
11 Andriejus Johnsonas
22 Tomas Mediena
33 Aleksas Hale

Pirmiau pateiktame pavyzdyje darbuotojo ID yra pagrindinis raktas, nes jis unikaliai identifikuoja darbuotojo įrašą. Šioje lentelėje nė vienas kitas darbuotojas negali turėti to paties darbuotojo ID.

Šioje pamokoje sužinosite:

  • Kas yra raktai?
  • Kodėl mums reikia rakto?
  • Įvairūs raktai duomenų bazių valdymo sistemoje
  • Kas yra „Super Key“?
  • Kas yra pagrindinis raktas?
  • Kas yra alternatyvus raktas?
  • Kas yra raktas į kandidatą?
  • Kas yra užsienio raktas?
  • Kas yra sudėtinis raktas?
  • Kas yra sudėtinis raktas?
  • Kas yra pakaitinis raktas?
  • Skirtumas tarp pirminio rakto ir užsienio rakto

Kodėl mums reikia rakto?

Štai keletas priežasčių, kodėl SQL raktas naudojamas DBVS sistemoje.

  • Raktai padeda nustatyti bet kokią duomenų eilutę lentelėje. Realiame pasaulyje lentelėje gali būti tūkstančiai įrašų. Be to, įrašai galėtų būti dubliuojami. Raktai užtikrina, kad, nepaisant šių iššūkių, galite unikaliai identifikuoti lentelės įrašą.
  • Leidžia nustatyti ryšį tarp lentelių ir nustatyti ryšį tarp jų
  • Padės jums užtikrinti tapatybę ir sąžiningumą santykiuose.

Raktų tipai duomenų bazių valdymo sistemoje

DBVS daugiausia yra septyni skirtingi raktų tipai ir kiekvieno rakto funkcija skiriasi:

  • „Super Key“ - „Super Key“ yra vieno ar kelių raktų grupė, identifikuojanti eilutes lentelėje.
  • Pagrindinis raktas - tai stulpelis arba stulpelių grupė lentelėje, unikaliai identifikuojanti visas tos lentelės eilutes.
  • Kandidato raktas - tai atributų rinkinys, kuris unikaliai identifikuoja lentelės rinkinius. Kandidato raktas yra super raktas be pakartotinių atributų.
  • Alternatyvus raktas - tai stulpelis arba stulpelių grupė lentelėje, unikaliai identifikuojanti visas tos lentelės eilutes.
  • Užsienio raktas - tai stulpelis, sukuriantis ryšį tarp dviejų lentelių. Užsienio raktų tikslas yra išlaikyti duomenų vientisumą ir leisti naršyti tarp dviejų skirtingų subjekto egzempliorių.
  • Sudėtinis raktas - turi du ar daugiau atributų, leidžiančių unikaliai atpažinti konkretų įrašą. Gali būti, kad duomenų bazėje kiekvienas stulpelis negali būti unikalus.
  • Sudėtinis raktas - dirbtinis raktas, kurio tikslas yra unikaliai identifikuoti kiekvieną įrašą, vadinamas pakaitiniu raktu. Tokio tipo raktai yra unikalūs, nes jie sukuriami, kai neturite natūralaus pirminio rakto.
  • Surogatinis raktas - dirbtinis raktas, kurio tikslas yra unikaliai identifikuoti kiekvieną įrašą, vadinamas pakaitiniu raktu. Tokio tipo raktai yra unikalūs, nes jie sukuriami, kai neturite natūralaus pirminio rakto.

Kas yra „Super“ raktas?

„Superkey“ yra vieno ar kelių raktų grupė, identifikuojanti lentelės eilutes. „Super“ raktas gali turėti papildomų atributų, kurių nereikia unikaliam identifikavimui.

Pavyzdys:

EmpSSN „EmpNum“ Empname
9812345098 AB05 Parodyta
9876512345 AB06 Roslyn
199937890 AB07 Džeimsas

Aukščiau pateiktame pavyzdyje EmpSSN ir EmpNum vardas yra superraktai.

Kas yra pagrindinis raktas?

PAGRINDINIS RAKTAS yra stulpelis arba stulpelių grupė lentelėje, unikaliai identifikuojanti visas tos lentelės eilutes. Pagrindinis raktas negali būti pasikartojantis, o ta pati reikšmė lentelėje negali būti rodoma daugiau nei vieną kartą. Lentelėje negali būti daugiau nei vienas pagrindinis raktas.

Pirminio rakto apibrėžimo taisyklės:

  • Dviejose eilutėse negali būti ta pati pagrindinio rakto reikšmė
  • Kiekvienoje eilutėje turi būti pirminio rakto reikšmė.
  • Pirminio rakto laukas negali būti nulinis.
  • Vertė pirminio rakto stulpelyje niekada negali būti modifikuojama ar atnaujinama, jei bet kuris užsienio raktas nurodo tą pirminį raktą.

Pavyzdys:

Šiame pavyzdyje StudID yra pagrindinis raktas.

„StudID“ Ritinys Nr Pirmas vardas Pavardė El
1 11 Tomas Kaina Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
2 12 Nikas Meistras Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
3 13 Dana Natanas Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.

Kas yra „Alternate“ raktas?

ALTERNATINIAI RAKTAI yra stulpelis arba stulpelių grupė lentelėje, unikaliai identifikuojanti visas tos lentelės eilutes. Lentelėje gali būti keli pirminio rakto pasirinkimai, tačiau tik vieną galima nustatyti kaip pagrindinį raktą. Visi raktai, kurie nėra pagrindinis raktas, vadinami alternatyviuoju raktu.

Pavyzdys:

Šioje lentelėje „StudID“, „Roll No“, „Email“ yra tinkami tapti pagrindiniu raktu. Kadangi „StudID“ yra pagrindinis raktas, „Roll No“, „Email“ tampa alternatyviu raktu.

„StudID“ Ritinys Nr Pirmas vardas Pavardė El
1 11 Tomas Kaina Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
2 12 Nikas Meistras Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
3 13 Dana Natanas Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.

Kas yra raktas į kandidatą?

KANDIDATO RAKTAS - tai atributų rinkinys, unikaliai identifikuojantis lentelės rinkinius. Kandidato raktas yra super raktas be pakartotinių atributų. Pagrindinis raktas turėtų būti pasirinktas iš raktų kandidatų. Kiekvienoje lentelėje turi būti bent vienas raktas kandidatui. Lentelėje gali būti keli kandidatų raktai, bet tik vienas pagrindinis raktas.

Kandidato rakto ypatybės:

  • Jame turi būti unikalios vertės
  • Kandidato raktas gali turėti kelis atributus
  • Neturi būti jokių nulinių verčių
  • Jame turėtų būti minimalūs laukai, kad būtų užtikrintas unikalumas
  • Kiekvieną lentelės įrašą identifikuokite unikaliai

Pavyzdys: Pateiktoje lentelėje Stud ID, Roll No ir Email yra raktai, kurie padeda mums unikaliai identifikuoti studento įrašą lentelėje.

„StudID“ Ritinys Nr Pirmas vardas Pavardė El
1 11 Tomas Kaina Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
2 12 Nikas Meistras Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.
3 13 Dana Natanas Šis el. Pašto adresas yra apsaugotas nuo šiukšlų. Norėdami jį peržiūrėti, turite įgalinti „JavaScript“.

Kas yra užsienio raktas?

UŽSIENIO RAKTAS yra stulpelis, sukuriantis ryšį tarp dviejų lentelių. Užsienio raktų tikslas yra išlaikyti duomenų vientisumą ir leisti naršyti tarp dviejų skirtingų subjekto egzempliorių. Jis veikia kaip kryžminė nuoroda tarp dviejų lentelių, nes ji nurodo pagrindinį kitos lentelės raktą.

Pavyzdys:

„DeptCode“ DeptName
001 Mokslas
002 Anglų
005 Kompiuteris
Mokytojo pažymėjimas Vardas Vardas
B002 Deividas Warner
B017 Sara Juozapas
B009 Maikas Bruntonas

Šiame dbms pavyzdyje esančiame klaviše turime dvi lenteles, mokome ir skyrius mokykloje. Tačiau nėra galimybės pamatyti, kuris paieškos skyrius dirba.

Šioje lentelėje, pridėdami užsienio raktą Deptcode prie Mokytojo vardo, galime sukurti ryšį tarp dviejų lentelių.

Mokytojo pažymėjimas „DeptCode“ Vardas Vardas
B002 002 Deividas Warner
B017 002 Sara Juozapas
B009 001 Maikas Bruntonas

Ši sąvoka taip pat žinoma kaip „Referential Integrity“.

Kas yra junginio raktas?

COMPOUND RAKTAS turi du ar daugiau atributų, leidžiančių unikaliai atpažinti konkretų įrašą. Gali būti, kad duomenų bazėje kiekvienas stulpelis negali būti unikalus. Tačiau kartu su kitais stulpeliais ar stulpeliais sudėtinių klavišų derinys tampa unikalus. Sudėtinio rakto duomenų bazėje tikslas yra unikaliai identifikuoti kiekvieną lentelės įrašą.

Pavyzdys:

Užsakymo Nr PorductID produkto pavadinimas Kiekis
B005 JAP102459 Pelė 5
B005 DKT321573 USB 10
B005 OMG446789 LCD ekranas 20
B004 DKT321573 USB 15
B002 OMG446789 Lazerinis spausdintuvas 3

Šiame pavyzdyje „OrderNo“ ir „ProductID“ negali būti pagrindinis raktas, nes jie neidentifikuoja įrašo. Tačiau galima naudoti sudėtinį užsakymo ID ir produkto ID raktą, nes jis unikaliai identifikuoja kiekvieną įrašą.

Kas yra sudėtinis raktas?

„COMPOSITE RAKTAS“ yra dviejų ar daugiau stulpelių derinys, unikaliai identifikuojantis lentelės eilutes. Stulpelių derinys garantuoja unikalumą, nors individualumas nėra garantuojamas. Taigi jie yra sujungti, kad būtų galima unikaliai identifikuoti lentelės įrašus.

Skirtumas tarp sudėtinio ir sudėtinio rakto yra tas, kad bet kuri sudėtinio rakto dalis gali būti svetimas raktas, tačiau sudėtinis raktas gali būti svetimo rakto dalis, o gal ir ne.

Kas yra pakaitinis raktas?

SURROGATO RAKTAI yra dirbtinis raktas, kurio tikslas yra unikaliai identifikuoti kiekvieną įrašą, vadinamas pakaitiniu raktu. Šis dalinis raktas dbms yra unikalus, nes jis sukurtas, kai neturite natūralaus pirminio rakto. Jie nesuteikia jokios reikšmės lentelės duomenims. Surogato raktas paprastai yra sveikasis skaičius. Pakaitinis raktas yra vertė, sukurta prieš pat įrašą įterpiant į lentelę.

Vardas Pavardė Pradžios laikas Pabaigos laikas
Anė Kalvis 09:00 val 18:00 val
Domkratas Pranciškus 08:00 val 17:00 val
Ana McLeanas 11:00 val 20:00 val
Parodyta Vilamas 14:00 val 23:00 val

Aukščiau pateiktame pavyzdyje parodyta skirtingų darbuotojų pamainų trukmė. Šiame pavyzdyje, norint unikaliai identifikuoti kiekvieną darbuotoją, reikalingas pakaitinis raktas.

Surogatiniai raktai kvadratu leidžiami, kai

  • Nė vienoje ypatybėje nėra pirminio rakto parametro.
  • Lentelėje, kai pagrindinis raktas yra per didelis arba sudėtingas.

Skirtumas tarp pirminio rakto ir užsienio rakto

Pirminis raktas Svetimas raktas
Padeda jums unikaliai identifikuoti įrašą lentelėje. Tai yra lentelės laukas, kuris yra pagrindinis kitos lentelės raktas.
Pagrindinis raktas niekada nepriima nulinių verčių. Svetimas raktas gali priimti kelias nulines reikšmes.
Pirminis raktas yra grupuotas indeksas, o DBVS lentelės duomenys yra fiziškai sutvarkyti sugrupuoto indekso seka. Užsienio raktas negali automatiškai sukurti indekso, grupuoto ar nesugrupuoto. Tačiau jūs galite rankiniu būdu sukurti indeksą svetimame rakte.
Lentelėje galite turėti vieną pagrindinį raktą. Lentelėje galite turėti kelis užsienio raktus.

Santrauka

  • SQL raktas yra atributas arba atributų rinkinys, padedantis nustatyti eilutę (porą) santykyje (lentelėje)
  • DBVS raktai leidžia nustatyti ryšį tarp lentelių ir nustatyti ryšį tarp lentelių
  • Septyni DBMS raktų tipai yra „Super“, „Primary“, „Candidate“, „Alternate“, „Foreign“, „Compound“ ir „Composite Key“.
  • Pagrindinis raktas yra pavienių arba kelių raktų grupė, identifikuojanti lentelės eilutes.
  • Stulpelis arba stulpelių grupė lentelėje, padedanti mums unikaliai identifikuoti visas tos lentelės eilutes, vadinama pagrindiniu raktu
  • Visi raktai, kurie nėra pagrindinis raktas, vadinami alternatyviuoju
  • Super raktas be pakartotinio atributo vadinamas kandidato raktu
  • Sudėtinis raktas yra raktas, turintis daug laukų, leidžiančių unikaliai atpažinti konkretų įrašą
  • Raktas, turintis kelis atributus, norint unikaliai identifikuoti lentelės eilutes, vadinamas sudėtiniu raktu
  • Dirbtinis raktas, kurio tikslas yra unikaliai identifikuoti kiekvieną įrašą, vadinamas pakaitiniu raktu
  • Pirminis raktas niekada nepriima nulinių verčių, o užsienio raktas gali priimti kelias nulines reikšmes.

Įdomios straipsniai...