Hva er en primær nøkkel?

En primærnøkkel er en oppføring i en database som er unik for en enkelt post. Denne nøkkelen er vanligvis avledet på en av to måter: en unik identifikasjonskode utenfor databasen eller et generert nummer fra databasen. Når databasen vil inneholde informasjon som alltid er unik for oppføringen, for eksempel et personnummer eller delidentifikasjonsnummer, brukes disse vanligvis som en primærnøkkel. Når dataene ikke har en slik identifikator, vil databasen ofte opprette tall basert på interne systemer for å gi hver post en unik kode.

Det er tre hovedbegrensninger for en primær nøkkel: eksistens, unikhet og uforanderlighet. Det må finnes en nøkkel på det tidspunktet posten blir laget - den kan ikke legges inn senere. Hver nøkkel må være helt forskjellig fra hvilken som helst annen nøkkel. Dette betyr at vanlige identifikatorer, for eksempel navn eller fødselsdato, ikke kan brukes fordi det er mulig at to personer blir født på samme dag med samme navn. Til slutt kan en primærnøkkel aldri endres når den er opprettet.

Siden en database potensielt kan ha et uendelig antall oppføringer, må en primærnøkkel også være uendelig. For å sikre at en database aldri går tom for nøkler, bruker de fleste poster en numerisk kode for nøkkelen. Siden tallene alltid kan bli større og datamaskiner ganske enkelt kan legge til nollplasser til eldre oppføringer, vil et system aldri gå tom for nøkler. Noen ganger er disse tallene basert på ikke-unik informasjon, men en unik identifikator blir lagt til for å sikre at nøkkelen er levedyktig.

Databaser vil bruke en primærnøkkel som en måte å organisere data på. Siden nøkkelen aldri gjentas, vil den informasjonen la databasen holde hver post separat fra hverandre. Hver del av informasjonen i en post kobles tilbake til nøkkelen; på den måten, uansett hva som skjer med systemet, kan databasen gjenopprette postene fra løs informasjon.

Tildeling av en meningsfull primærnøkkel blir ofte sett på som en bedre praksis enn automatisk å generere en verdi. Dette vil gi posten en identifikator som både fungerer som en nøkkel og gir data. I små databaser er denne sondringen sjelden nødvendig, men i store systemer kan den ekstra plassen som brukes av en generert nøkkel føre til alvorlig databaseoppblåsthet. Dette vil både bremse systemet og gjøre at databasen krever betydelig mer lagringsplass.

ANDRE SPRÅK

Hjalp denne artikkelen deg? Takk for tilbakemeldingen Takk for tilbakemeldingen

Hvordan kan vi hjelpe? Hvordan kan vi hjelpe?