Ne uporabljajte poštne številke ali številke socialnega zavarovanja
Podatkovne baze so odvisne od ključev za shranjevanje, razvrščanje in primerjavo ali ustvarjanje odnosov med zapisi. Če ste že nekaj časa okoli baz podatkov, ste verjetno slišali za različne tipe ključev: primarne ključe, ključe kandidatov in zunanje ključe . Ko ustvarite novo tabelo zbirke podatkov, vas prosimo, da izberete en primarni ključ, ki bo enolično identificiral vsak zapis, shranjen v tej tabeli.
Zakaj je primarni ključ pomemben
Izbira primarnega ključa je ena od najbolj kritičnih odločitev, ki jih boste sprejeli pri oblikovanju nove baze podatkov . Najpomembnejša omejitev je, da morate zagotoviti, da je izbrani ključ edinstven. Če je mogoče, da sta dve zapisi - preteklost, sedanjost ali prihodnost - lahko delijo isto vrednost za atribut, je to slaba izbira za primarni ključ.
Drug pomemben vidik primarnega ključa je njegova uporaba v drugih tabelah, ki se navezujejo na to v relacijski podatkovni bazi. V tem pogledu primarni ključ deluje kot cilj kazalca. Zaradi teh soodvisnosti mora biti primarni ključ, ko je ustvarjen zapis, in se nikoli ne more spremeniti.
Slaba izbira za primarne ključe
Kaj lahko nekateri menijo, da je očitna izbira za primarni ključ, je lahko slaba izbira. Tukaj je nekaj primerov:
- Poštne kode ne naredijo dobrih primarnih ključev za tabelo mest. Če naredite preprosto pregledno tabelo mest, se zdi, da je poštna številka logični primarni ključ. Vendar lahko pri nadaljnji preiskavi ugotovite, da več kot eno mesto deli poštno številko. Na primer, mesta New Jersey v Neptunu, Neptun City, Tinton Falls in Wall Township imajo na voljo številko 07753.
- Številke socialnega zavarovanja zaradi številnih razlogov ne naredijo dobrih primarnih ključev. Večina ljudi meni, da je njihova SSN zasebna in ne želi, da je jasno vidna uporabnikom baze podatkov. Nekateri ljudje nimajo SSN-tujcev ali priseljencev, ki še niso prejeli kartice socialnega zavarovanja. SSN lahko ponovno uporabite tudi po smrti posameznika. Posameznik ima lahko več kot en SSN v življenju, ko uprava socialne varnosti izda novo številko v primerih goljufije ali kraje identitete.
- E-poštni naslovi so tudi slaba izbira za primarni ključ. Čeprav so edinstveni, se sčasoma lahko spreminjajo. Poleg tega vsi nimajo e-poštnega naslova.
Izbira učinkovitega primarnega ključa
Torej, kaj je dober primarni ključ? V večini primerov se obrnite na svoj sistem zbirke podatkov za podporo.
Najboljša praksa v oblikovanju baz podatkov je uporaba internega ustvarjenega primarnega ključa. Sistem za upravljanje baze podatkov lahko običajno ustvari edinstven identifikator, ki nima nobenega pomena zunaj sistema zbirke podatkov. Na primer, lahko uporabite tip podatkov Microsoft Access AutoNumber, da ustvarite polje z imenom RecordID. Vrsta podatkov samodejno poveča polje vsakič, ko ustvarite zapis. Medtem ko je številka sama brez pomena, zagotavlja zanesljiv način za sklicevanje na posamezen zapis v poizvedbah.
Dober primarni ključ je ponavadi kratek, uporablja številke in se izogiba posebnim znakovam ali mešanici velikih in malih črk, da bi olajšal hitro iskanje po poizvedbah in primerjave.