Nepoužívajte PSČ ani číslo sociálneho poistenia
Databázy závisia od kľúčov na ukladanie, triedenie a porovnávanie alebo vytváranie vzťahov medzi záznamami. Ak ste na nej chvíľku boli databázy, pravdepodobne ste počuli o rôznych typoch kľúčov: primárne kľúče, kandidátske kľúče a cudzie kľúče . Keď vytvoríte novú databázovú tabuľku, zobrazí sa výzva na výber jedného primárneho kľúča, ktorý jedinečne identifikuje každý záznam uložený v danej tabuľke.
Prečo je primárny kľúč dôležitý
Výber primárneho kľúča je jedno z najdôležitejších rozhodnutí, ktoré urobíte pri návrhu novej databázy . Najdôležitejším obmedzením je, že musíte zabezpečiť, aby bol vybraný kľúč jedinečný. Ak je možné, že dva záznamy - minulé, súčasné alebo budúce - môžu zdieľať rovnakú hodnotu pre atribút, je to zlá voľba primárneho kľúča.
Ďalším dôležitým aspektom primárneho kľúča je jeho použitie v iných tabuľkách, ktoré naň odkazujú v relačnej databáze. V tomto aspekte sa primárny kľúč správa ako cieľ ukazovateľa. Vzhľadom na tieto vzájomné závislosti musí primárny kľúč existovať pri vytváraní záznamu a nikdy sa nemôže meniť.
Zlé voľby pre primárne klávesy
To, čo niektorí ľudia môžu považovať za jasnú voľbu primárneho kľúča, môže byť namiesto toho slabá voľba. Tu je niekoľko príkladov:
- Poštové smerovacie čísla neposkytujú dobré kľúče pre tabuľku miest. Ak vytvárate jednoduchú vyhľadávaciu tabuľku miest, zdá sa, že PSČ je logický primárny kľúč. Po ďalšom vyšetrovaní si však môžete uvedomiť, že viac ako jedno mesto zdieľa PSČ. Napríklad mestá New Jersey Neptune, Neptune City, Tinton Falls a Wall Township zdieľajú PSČ 07753.
- Čísla sociálneho zabezpečenia nevytvárajú dobré primárne kľúče z mnohých dôvodov. Väčšina ľudí považuje ich SSN za súkromné a nechce, aby boli jasne viditeľné pre používateľov databázy. Niektorí ľudia nemajú SSN - cudzincov alebo prisťahovalcov, ktorí nikdy nedostali kartu sociálneho zabezpečenia. SSN môžu byť opäť použité po smrti jednotlivca. Jednotlivec môže mať viac ako jedno SSN počas celého života, keď správa sociálneho zabezpečenia vydá nové číslo v prípadoch podvodu alebo krádeže identity.
- E-mailové adresy sú tiež zlá voľba pre primárny kľúč. Hoci sú jedinečné, môžu sa časom meniť. Okrem toho nie každý má e-mailovú adresu.
Výber efektívneho primárneho kľúča
Takže, čo robí dobrý primárny kľúč? Vo väčšine prípadov sa obráťte na databázový systém na podporu.
Najlepším postupom v návrhu databázy je použitie interného generovaného primárneho kľúča. Váš systém správy databáz môže zvyčajne generovať jedinečný identifikátor, ktorý nemá zmysel mimo databázového systému. Môžete napríklad použiť typ údajov Microsoft Access AutoNumber na vytvorenie poľa s názvom RecordID. Typ údajov Automatické číslo automaticky zvýši poľa pri každom vytvorení záznamu. Zatiaľ čo samotné číslo je bezvýznamné, poskytuje spoľahlivý spôsob, ako odkazovať na jednotlivý záznam v dopytoch.
Dobrý primárny kľúč je zvyčajne krátky, používa čísla a vyhýba sa špeciálnym znakom alebo kombinácii veľkých a malých písmen, čo uľahčuje rýchle vyhľadávanie a porovnávanie databáz.