Preden se naučimo razlike med primarnim in tujim ključem, se naučimo:
Kaj so ključi?
Ključi so atribut, ki vam pomaga prepoznati vrstico (nabor) v relaciji (tabeli). Omogočajo vam iskanje razmerja med dvema tabelama. Tipke vam pomagajo enolično prepoznati vrstico v tabeli s kombinacijo enega ali več stolpcev v tej tabeli. Ključ baze podatkov je koristen tudi za iskanje edinstvenega zapisa ali vrstice iz tabele.
Kaj je razmerje med zbirko podatkov?
Razmerje baze podatkov je povezava med eno ali več tabel, ki so ustvarjene z uporabo stavkov za združevanje. Uporablja se za učinkovito pridobivanje podatkov iz baze podatkov. Obstajajo predvsem tri vrste odnosov 1) ena na ena, 2) ena na več, 3) veliko na veliko.
Kaj je primarni ključ?
Omejitev primarnega ključa je stolpec ali skupina stolpcev, ki enolično identificira vsako vrstico v tabeli sistema upravljanja relacijske baze podatkov. Ne more biti dvojnik, kar pomeni, da se ista vrednost v tabeli ne sme pojaviti več kot enkrat.
Tabela ima lahko več kot en primarni ključ. Primarni ključ lahko določite na ravni stolpca ali tabele. Če ustvarite sestavljeni primarni ključ, ga je treba določiti na ravni tabele.
Kaj je tuji ključ?
Tuji ključ je stolpec, ki ustvarja razmerje med dvema tabelama. Namen tujega ključa je ohraniti celovitost podatkov in omogočiti navigacijo med dvema različnima primerkoma entitete. Deluje kot navzkrižno sklic med dvema tabelama, saj se sklicuje na primarni ključ druge tabele. Vsak odnos v zbirki podatkov mora biti podprt s tujim ključem.
KLJUČNE RAZLIKE:
- Omejitev primarnega ključa je stolpec, ki enolično identificira vsako vrstico v tabeli sistema za upravljanje relacijske baze podatkov, medtem ko je tuji ključ stolpec, ki ustvari odnos med dvema tabelama.
- Primarni ključ nikoli ne sprejme ničelnih vrednosti, medtem ko lahko tuji ključ sprejme več ničelnih vrednosti.
- V tabeli lahko imate samo en primarni ključ, medtem ko imate v tabeli več tujih ključev.
- Vrednosti primarnega ključa ni mogoče odstraniti iz nadrejene tabele, medtem ko je vrednost tujega ključa mogoče odstraniti iz podrejene tabele.
- Nobena vrstica ne more imeti enakih vrednosti za primarni ključ, po drugi strani pa lahko tuji ključ vsebuje podvojene vrednosti.
- Vstavljanje vrednosti v stolpec tabele med vstavljanjem katere koli vrednosti v tabelo tujega ključa ni omejeno; zagotovite, da je vrednost prisotna v stolpcu primarnega ključa.
Zakaj uporabljati primarni ključ?
Tu so slabosti / prednosti uporabe primarnega ključa:
- Glavni cilj primarnega ključa je prepoznati vsak zapis v tabeli zbirke podatkov.
- Primarni ključ lahko uporabite, kadar nekomu ne dovolite vnašanja ničelnih vrednosti.
- Če izbrišete ali posodobite zapise, boste izvedli dejanje, s katerim zagotovite celovitost podatkov.
- Opravite omejeno operacijo, da zavrnete brisanje ali posodobitev nadrejene tabele.
- Podatki so organizirani v zaporedju gručastega indeksa, kadar koli fizično organizirate tabelo DBMS.
Zakaj uporabljati tuji ključ?
Tu so pomembni razlogi za uporabo tujega ključa:
- Tuji ključi vam pomagajo preseliti entitete s pomočjo primarnega ključa iz nadrejene tabele.
- Tuji ključ vam omogoča, da dve ali več tabel povežete skupaj.
- Zaradi tega so podatki v bazi podatkov dosledni.
- Tuji ključ lahko uporabite za povezovanje stolpca ali kombinacije stolpcev s primarnim ključem v nadrejeni tabeli.
- Omejitev tujega ključa SQL se uporablja za zagotovitev, da se referenčna celovitost nadrejenega podatkov ujema z vrednostmi v podrejeni tabeli.
Primer primarnega ključa
Sintaksa:
Spodaj je sintaksa primarnega ključa:
CREATE TABLE(Column1 datatype,Column2 datatype, PRIMARY KEY (Column-Name).);
Tukaj,
- Table_Name je ime tabele, ki jo morate ustvariti.
- Ime stolpca je ime stolpca s primarnim ključem.
Primer:
StudID | Roll št | Ime | Priimek | E-naslov |
---|---|---|---|---|
1. | 11. | Tom | Cena | Ta e-poštni naslov je zaščiten proti smetenju. Če ga želite videti, omogočite Javascript. |
2. | 12. | Nick | Wright | Ta e-poštni naslov je zaščiten proti smetenju. Če ga želite videti, omogočite Javascript. |
3. | 13. | Dana | Natan | Ta e-poštni naslov je zaščiten proti smetenju. Če ga želite videti, omogočite Javascript. |
V zgornjem primeru smo ustvarili študentsko tabelo s stolpci, kot so StudID, Roll No, First Name, Last Name in Email. StudID je izbran kot primarni ključ, ker lahko enolično prepozna druge vrstice v tabeli.
Primer tujega ključa
Sintaksa:
Spodaj je sintaksa tujega ključa:
CREATE TABLE