Ärge kasutage postiindeksit või sotsiaalkindlustuse numbrit
Andmebaasid sõltuvad kandedest, et säilitada, sorteerida ja võrrelda või luua suhteid dokumentide vahel. Kui olete juba mõnda aega andnud andmebaase, olete ilmselt kuulnud erinevat tüüpi võtmetest: primaarvõtmed, kandidaatvõtmed ja võõrkeeled . Kui loote uue andmebaasi tabeli, palutakse teil valida üks primaarvõti , mis määrab kindlaks iga tabelis salvestatud kirje.
Miks peamine võti on oluline
Primaarvõtme valimine on üks kõige kriitilisemaid otsuseid, mida teete uue andmebaasi kujundamisel . Kõige olulisem piirang on see, et peate tagama, et valitud võti on ainulaadne. Kui on võimalik, et kaks kirjeid - mineviku, praeguse või tuleviku - võivad jagada atribuudi jaoks sama väärtust, on see primaarvõtme jaoks kehv valik.
Primaarvõtme veel üks oluline aspekt on selle kasutamine teiste tabelitega, mis linkivad selle relatsioonandmebaasis. Selles aspektis toimib primaarklahv nagu näitaja sihtmärk. Nende vastastikuse sõltuvuse tõttu peab rekordi loomise ajal olema esmane võti ja see ei saa kunagi muuta.
Peamised võtmed on valed
Selle asemel võib olla halb valik, mida mõned inimesed võivad pidada primaarvõtme jaoks ilmselgeks. Siin on mõned näited:
- Postiindeksid ei anna linnade tabeli jaoks esmaseid võtmeid. Kui teete linnade lihtsa otsingu tabeli, näib, et sihtnumber on loogiline esmane võti. Kuid edasise uurimise korral võite mõista, et rohkem kui üks linn jagab sihtnumbri. Näiteks New Jersey linnad Neptune, Neptune City, Tinton Falls ja Wall Wallship jagavad kõigile 07753 postiindeksit.
- Sotsiaalkindlustuse numbrid ei anna mitmesugustel põhjustel häid esmaseid võtmeid. Enamik inimesi leiab, et SSN on privaatne ja ei soovi, et see oleks andmebaasis kasutajatele selgelt nähtav. Mõnedel inimestel ei ole SSN-i välismaalasi ega sisserändajaid, kes pole kunagi saanud sotsiaalkindlustuskaarti. SSN-sid saab uuesti kasutada ka pärast isiku surma. Inimesel võib kogu eluea jooksul olla rohkem kui üks SSN, kui sotsiaalkindlustusamet väljastab uue numbri pettuse või identiteedivarguse korral.
- E-posti aadressid on primaarvõtme jaoks kehv valik. Kuigi need on ainulaadsed, võivad nad aja jooksul muutuda. Lisaks sellele pole kõigil e-posti aadressi.
Tõhusa esmase võtme valimine
Mis on hea esmane võti? Enamikul juhtudel pöörduge abi saamiseks oma andmebaasi süsteemi.
Andmebaasi disaini parimaks tavaks on sisemiselt genereeritud primaarvõtme kasutamine. Teie andmebaasi haldussüsteem võib tavaliselt genereerida unikaalse identifikaatori, millel puudub tähendus väljaspool andmebaasi süsteemi. Näiteks võite kasutada andmevormi Microsoft Access AutoNumber, et luua väljale nimega RecordID. Andmete tüüp AutoNumber suurendab välja iga kord, kui loote rekordi. Kuigi number iseenesest on mõttetu, pakub see usaldusväärset viisi üksikute kirjade päringutele viitamiseks.
Hea esmane võti on tavaliselt lühike, kasutab numbreid ning väldib erimärke või suurtähtede ja väiketähtede kombinatsiooni, et hõlbustada andmebaasi kiiret otsimist ja võrdlusi.