Lugege, mis teeb andmebaasis hea või primaarse võti
Mis on esmane võti? Andmebaasi maailmas identifitseerib relatsioonitabeli esmane võti unikaalse tabeli iga rekordi. Andmebaasid kasutavad võtmeid kirjete võrdlemiseks, sorteerimiseks ja salvestamiseks ning suhted dokumentide loomiseks.
Esmase võtme valimine andmebaasis on protsessi üks olulisemaid samme. See võib olla tavaline atribuut, mis on garanteeritud olema ainulaadne, näiteks laudis olev sotsiaalkindlustuse number, mis ei sisalda rohkem kui üht rekordit inimese kohta, või - eelistatavalt - seda saab luua andmebaasi haldussüsteem, nagu näiteks globaalselt unikaalne tunnus või GUID , Microsoft SQL Serveris . Peamised võtmed võivad koosneda ühest atribuutist või mitme atribuudi kombinatsioonist.
Peamised võtmed on unikaalsed lingid seotud teabe kohta teistes tabelites, kus kasutatakse primaarvõti. See tuleb sisestada, kui rekord on loodud, ja seda ei tohiks kunagi muuta. Igal andmebaasi tabelil on veerg või kaks spetsiaalselt primaarvõtme jaoks.
Peamise võtme näide
Kujutage ette, et teil on STUDENTSi tabel, mis sisaldab ülikooli iga üliõpilase rekordi. Üliõpilase unikaalne õpilase ID-number on STUDENTSi tabelis peamise võtme jaoks hea valik. Üliõpilase ees- ja perekonnanimi ei ole hea valik, sest alati on võimalus, et rohkem kui ühel üliõpilasel võib olla sama nimi.
Muud primaarvõtmete kehvad valikud hõlmavad postiindeksit, e-posti aadressi ja tööandjat, mis kõik võivad paljusid inimesi muuta või esindada. Primaarvõtme abil kasutatav identifikaator peab olema ainulaadne. Isegi sotsiaalkindlustuse numbrid võivad muutuda, kui sotsiaalkindlustuse amet määrab numbri isikule, kellele on identiteedivargus mõjutatud. Mõnel inimesel pole isegi sotsiaalkindlustuse numbrit. Kuid kuna mõlemad juhud on haruldased. Sotsiaalkindlustuse numbrid võivad olla primaarvõtme jaoks hea valik.
Näpunäiteid heade primaarsete võtmete valimise kohta
Kui valid õige primaarvõtme, on andmebaasiotsingud kiireid ja usaldusväärseid. Lihtsalt mäleta:
- Hoia see lühidalt . Kuna esmast võtit kasutatakse otsingute ja võrdluste jaoks, siis lühike primaarvõtme tähendab seda, et andmebaasi haldussüsteem suudab seda kiiremini töödelda kui pikk primaarvõti.
- Võimaluse korral kasuta primaarvõtme numbrit . SQL Server või muud andmebaasi haldussüsteemid töötlevad numbriandmete tüüpe kiiremini kui iseloomuandmete tüübid.
- Hoidke see lihtne. Ärge kasutage ühtegi erimärki, manustatud tühikuid ega top- ja väiksema suurtähtede kombinatsiooni.
- Ärge kunagi muutke primaarvõtit pärast selle määramist.