Odabir primarnog ključa za bazu podataka

Sadržaj:

Odabir primarnog ključa za bazu podataka
Odabir primarnog ključa za bazu podataka
Anonim

Baze podataka zavise od ključeva za skladištenje, sortiranje i poređenje ili kreiranje odnosa između zapisa. Ako ste već neko vrijeme oko baza podataka, vjerovatno ste čuli za različite tipove ključeva: primarni ključevi, kandidatski ključevi i strani ključevi.

Kada kreirate novu tabelu baze podataka, od vas se traži da izaberete jedan primarni ključ koji će jedinstveno identifikovati svaki zapis pohranjen u toj tabeli.

Image
Image

Zašto je primarni ključ važan

Odabir primarnog ključa jedna je od najkritičnijih odluka koje ćete donijeti u dizajnu nove baze podataka. Najvažnije ograničenje je da morate osigurati da je odabrani ključ jedinstven. Ako je moguće da dva zapisa (prošli, sadašnji ili budući) mogu dijeliti istu vrijednost za atribut, to je loš izbor za primarni ključ.

Još jedan važan aspekt primarnog ključa je njegova upotreba od strane drugih tabela koje se povezuju na njega u relacijskoj bazi podataka. U ovom aspektu, primarni ključ djeluje kao cilj pokazivača. Zbog ovih međuzavisnosti, primarni ključ mora postojati kada se zapis kreira, i nikada se ne može promijeniti.

Loši izbori za primarne ključeve

Ono što bi neki ljudi mogli smatrati očiglednim odabirom za primarni ključ mogao bi biti loš izbor. Evo nekoliko primjera:

  • Poštanski brojevi ne čine dobre primarne ključeve za tabelu gradova. Ako pravite jednostavnu tabelu za pretraživanje gradova, čini se da je poštanski broj logičan primarni ključ. Međutim, nakon daljeg istraživanja, možda ćete shvatiti da više od jednog grada dijeli poštanski broj. Na primjer, gradovi New Jerseya Neptun, Neptun City, Tinton Falls i Wall Township dijele poštanski broj 07753.
  • Brojevi socijalnog osiguranja ne čine dobre primarne ključeve iz mnogo razloga. Većina ljudi svoj SSN smatra privatnim i ne želi da bude jasno vidljiv korisnicima baze podataka. Osim toga, neki ljudi nemaju SSN.
  • Adrese e-pošte su takođe loš izbor za primarni ključ. Iako su jedinstvene, mogu se vremenom promijeniti. Štaviše, nemaju svi adresu e-pošte.

Šta čini dobar primarni ključ

Dakle, kako odabrati efektivni primarni ključ? U većini slučajeva, obratite se svom sistemu baze podataka za podršku.

Najbolja praksa u dizajnu baze podataka je korištenje interno generiranog primarnog ključa. Vaš sistem za upravljanje bazom podataka može normalno generirati jedinstveni identifikator koji nema značenje izvan sistema baze podataka.

Na primjer, možete koristiti tip podataka Microsoft Access AutoNumber da kreirate polje pod nazivom RecordID. Tip podataka AutoNumber automatski povećava polje svaki put kada kreirate zapis. Iako je sam broj besmislen, on pruža pouzdan način za referenciranje pojedinačnog zapisa u upitima.

Dobar primarni ključ je obično kratak, koristi brojeve i izbjegava specijalne znakove ili mješavinu velikih i malih znakova kako bi se olakšalo brzo pretraživanje baze podataka i poređenja.

Preporučuje se: