Razlika između primarnog i kandidatskog ključa

Autor: Laura McKinney
Datum Stvaranja: 1 Travanj 2021
Datum Ažuriranja: 11 Svibanj 2024
Anonim
Razlika između primarnog i kandidatskog ključa - Tehnologija
Razlika između primarnog i kandidatskog ključa - Tehnologija

Sadržaj


Ključevi su atribut ili skup atributa koji se koriste za pristup tupovima iz tablice ili se također koriste za izgradnju odnosa između dvije tablice. U ovom ćemo članku razgovarati o primarnom i kandidatskom ključu i razlikama među njima. I Primarni i kandidatski ključ jedinstveno identificiraju tuple u odnosu ili tablici. No, najvažnija točka koja ih razlikuje je da može postojati samo jedna Osnovni ključ u odnosu. Međutim, može ih biti više kandidat ključ u odnosu.

Postoji još nekoliko razlika između primarnog i ključa kandidata o kojima ću govoriti uz pomoć usporedne tablice koja je prikazana u nastavku.

  1. Usporedni grafikon
  2. definicija
  3. Ključne razlike
  4. Zaključak

Usporedni grafikon

Osnove za usporedbuOsnovni ključKljuč kandidata
Osnovni, temeljniU bilo kojem odnosu može biti samo jedan primarni ključ.U vezi može biti više od jednog kandidatskog ključa.
NULLNijedan atribut primarnog ključa ne može sadržavati NULL vrijednost.Atribut ključa kandidata može imati NULL vrijednost.
NaveditePrimarni ključ za bilo koji odnos nije moguć.Ne može biti veza bez navedenog kandidatskog ključa.
svojstvoPrimarni ključ opisuje najvažniji atribut odnosa.Ključevi kandidata predstavljaju kandidate koji se mogu kvalificirati za primarni ključ.
ObratnoPrimarni ključ je ključ kandidata.Ali nije obavezno da svaki ključ kandidata može biti primarni ključ.


Definicija primarnog ključa

Osnovni ključ je atribut ili skup atributa koji će jedinstveno identificirati svaki svod u odnosu. Može biti samo jedan primarni ključ za svaki odnos. Mora se paziti da primarni ključ treba nikada sadrže a NULL vrijednost, a mora imati jedinstvena vrijednost za svaki zbroj u odnosu. Vrijednosti atributa / s primarnog ključa moraju biti statički, tj. vrijednost atributa ne smije se nikada ili rijetko mijenjati.

Jedan od Ključevi kandidata osposobljava se da postane primarni ključ. pravila da se ključ kandidata mora kvalificirati da postane primarni jesu da vrijednost ključa nikada ne bi trebala biti NULL i mora biti jedinstvena za sve tupole.

Ako odnos sadrži atribut koji je primarni ključ nekog drugog odnosa, tada se taj atribut naziva strani kljuc.


Savjetuje se pronalazak primarnog ključa odnosa prije uvođenja drugih atributa relacije jer primarni ključ jedinstveno identificira svaki sloj. Bolje je odabrati jedan atribut ili mali broj atributa kao primarni ključ, što olakšava upravljanje odnosima.

Pogledajmo primjer primarnog ključa.

Student {ID, ime, prezime, dob, adresa}

Ovdje ćemo prvo utvrditi ključeve kandidata. Shvatio sam dva kandidat ključevi {ISKAZNICA} i {Ime prezime} jer će oni jedinstveno identificirati svakog učenika u odnosu Student. Sad ću ovdje izabrati iskaznica kao moj primarni ključ jer se ponekad može dogoditi da dva učenika mogu imati ista imena i prezimena, tako da će biti lako pratiti učenika sa njegovim iskaznica.

Definicija ključa kandidata

kandidat ključ je atribut ili skup atributa koji jedinstveno definiraju tuple u odnosu. Tu je više od jednog kandidat ključ u vezi. Ti ključevi kandidata su kandidati koji se mogu kvalificirati za primarni ključ.

Iako se svaki ključ kandidata može smatrati primarnim ključem, samo jedan se može odabrati kao primarni ključ. Pravila koja kandidat ključ zahtijeva da postane primarni ključ vrijednost atributa ključa nikada ne može biti NULL u bilo kojoj domeni ključa, mora biti jedinstvena i statički.

Ako se svi ključevi kandidata kvalificiraju za primarni ključ, tada iskusni DBA mora donijeti odluku da utvrdi primarni ključ. Nikada ne može biti veza bez ključa kandidata.

Razjasnimo nam ključ kandidata s primjerom. Ako dodamo još nekih atributa relaciji Student, gore sam govorio.

Student {ID, ime, prezime, dob, adresa, DOB, odjel_ime}

Ovdje mogu shvatiti dva kandidatski ključevi koji su {ISKAZNICA}, {Ime, Prezime, DOB}, Tako možete shvatiti da su kandidatski ključevi oni koji jedinstveno identificiraju snop u odnosu.

  1. Osnovna točka koja razlikuje primarni ključ od kandidatskog ključa jest ta što može postojati samo jedan primarni za bilo koji odnos u shemi. Međutim, može biti više ključeva kandidata za jedan odnos.
  2. Atribut pod primarnim ključem nikada ne može sadržavati NULL vrijednost jer je glavna funkcija primarnog ključa jedinstveno identificirati zapis u odnosu. Čak se i primarni ključ može upotrijebiti kao strani ključ u drugom odnosu, pa stoga ne smije biti NULL, tako da referencijski odnos može pronaći tupove u referenciranom odnosu. Kandidatni ključ može biti NULL, osim ako je ograničenje atributa određeno ne null.
  3. Izborno je navesti primarni ključ, ali odnos ne može biti bez ključeva kandidata.
  4. Primarni ključ opisuje jedinstven i najvažniji atribut relacije, dok ključevi kandidata daju one kandidate među kojima jedan može biti izabran kao primarni ključ.
  5. Svaki primarni ključ ključ je kandidata, ali obrnuto nije istina.

Zaključak:

Za vezu je neobvezno odrediti primarni ključ. S druge strane, ako deklarirate vezu, kandidatski ključevi moraju biti prisutni u toj vezi kako biste konstruirali dobar odnos.