..
Når man designer en database til at understøtte anvendelser er væsentlig at overveje, hvordan man håndterer primære nøgler. Der er i denne forbindelse mindst to skoler til at tænke: en, der hævder, at det rigtige at gøre, er at bruge de såkaldte surrogat nøgler (dvs. ikke baseret på reelle data) og en anden, der hævder, der skal bruges i stedet for reelle data, som nøgleværdier. Så er der en mellemvej, som består i "en database til brug inden for begge disse løsninger, afhængigt af de relative fordele og ulemper (som vi snart).
Når du designer en tabel, er det som regel indeholder en eller flere kolonner, der udgør dens primære nøgle. Som vi kender en tabels primære nøgle er en værdi (eller en kombination af værdier), der entydigt identificerer hver række. Som tidligere nævnt, hvis en nøgle består af reelle værdier kaldes naturlige nøgle, men hvis for eksempel nøglen genereres, hver gang du indsætter en række i tabellen kaldes surrogat nøgle. En surrogat nøgle er normalt en numerisk værdi i SQL Server, og ofte de kolonner af denne type er dem af identitet, hvoraf mere senere.
En naturlig nøgle består af reelle data, nemlig data, der har et forhold til værdier i andre kolonner af rækken (eksempelvis skatteværdien koden for en person i en Kunder tabel, der også indeholder sin almindelighed). Selv en surrogat nøgle entydigt identificerer en række i en tabel, men dens værdi har ingen relation til andre værdier af den linje, og det er simpelthen genereres og lagres.
Vi analyserer fordele og ulemper ved de to typer af nøgler begynder med surrogat:
PRO
MOD
Med hensyn til den naturlige nøgler:
PRO
MOD
| |
MS Access (Avanceret)
Lær at oprette og administrere databaser hurtigt og nemt. Fra 29 €. |
| |
MySQL (Kursus)
Forvaltning af open source-database. Fra 39 €. |
| |
SQL-og Database (Kursus)
Oprette og administrere relationelle databaser. Fra 39 €. |