En primærnøkkel er et felt eller et sett med felt med unike verdier i en tabell. Nøkkelverdiene kan brukes til å referere til hele poster fordi hver post har en annen nøkkelverdi. Hver tabell kan bare ha én primærnøkkel. Et primærnøkkelfelt kan opprettes automatisk når du oppretter en tabell i Access, eller du kan angi feltene du vil bruke som primærnøkkel. Denne artikkelen forklarer hvordan og hvorfor primærnøkler brukes.
For å angi primærnøkkelen for en tabell åpner du tabellen i utformingsvisning. Merk feltet (eller feltene) som du vil bruke, og klikk deretter Primærnøkkel på båndet.
Obs!: Denne artikkelen er ment for bruk bare med Access-skrivebordsdatabaser. Primærnøkler for nye tabeller behandles automatisk i Access i Access-nettprogram og -nettdatabaser. Det er mulig å overstyre disse automatiske primærnøklene, men vi anbefaler at du ikke gjør det.
I denne artikkelen
Oversikt over primærnøkler i Access
Primærnøkler brukes til å koble sammen data fra flere tabeller i Access og kombinere dem slik at de gir mening. Du kan inkludere primærnøkkelfeltene i andre tabeller for å referere tilbake til tabellen som er kilden til primærnøkkelen. I de andre tabellene kalles feltene sekundærnøkler. Et felt med navnet Kunde-ID i tabellen Kunder kan for eksempel også vises i tabellen Ordrer. I tabellen Kunder er nøkkelen primærnøkkelen. I tabellen Ordrer kalles den sekundærnøkkel. En sekundærnøkkel er, for å si det enkelt, en primærnøkkel i en annen tabell. Hvis du vil ha mer informasjon, kan du se Grunnleggende om databaseutforming.
1. Primærnøkkel
2. Sekundærnøkkel
Hvis du flytter eksisterende data inn i en database, har du kanskje allerede et felt du kan bruke som primærnøkkel. Et unikt identifikasjonsnummer, for eksempel et ID-nummer, et serienummer eller en kode, fungerer ofte som en primærnøkkel i en tabell. Du kan for eksempel ha en tabell med navnet Kunder der hver kunde har en unik kunde-ID. Feltet Kunde-ID er primærnøkkelen.
I Access opprettes det automatisk en indeks for primærnøkkelen, noe som gjør det raskere å utføre spørringer og andre operasjoner. Det sørges også for at hver post har en verdi i primærnøkkelfeltet, og at verdien alltid er unik.
Når du oppretter en ny tabell i Dataark-visningen, opprettes det automatisk en primærnøkkel i Access som tilordner et feltnavn for ID og datatypen Autonummer.
Hva er en god primærnøkkelkandidat?
En god primærnøkkelkandidat har flere kjennetegn.
-
Den identifiserer hver rad unikt
-
Den er aldri tom eller NULL – Den inneholder alltid en verdi
-
Verdiene den inneholder, endres sjelden (helst aldri)
Hvis du ikke kan identifisere en god nøkkel, oppretter du et Autonummer-felt som skal brukes som nøkkel. Et Autonummer-felt genererer automatisk en verdi for seg selv hver gang en post lagres første gang. Et Autonummer-felt tilfredsstiller dermed alle tre egenskaper for en god primærnøkkel. Hvis du vil ha mer informasjon om hvordan du legger til et Autonummerfelt, kan du se delen Legge til et Autonummerfelt som primærnøkkel.
Et Autonummer-felt er en god primærnøkkel.
Eksempler på dårlige primærnøkler
Alle felt som mangler én eller flere av egenskapene som kjennetegner en god nøkkelkandidat, er et dårlig valg som primærnøkkel. Her er noen eksempler på felt som vil være dårlige primærnøkler for en Kontakter-tabell, og årsaker til at de vil være dårlige valg.
Dårlig primærnøkkel |
Årsak |
---|---|
Personnavn |
Kan ikke stole på at de er unike, og kan endres |
Telefonnummer |
Stor sannsynlighet for endring. |
E-postadresse |
Stor sannsynlighet for endring. |
Postnummer |
Flere personer kan ha samme postnummer |
Kombinasjoner av fakta og tall |
Faktadelen kan endres og føre til mye vedlikeholdsarbeid. Kan også føre til forvirring hvis faktadelen gjentas som et eget felt. Kombinasjon av navnet på stedet og et tall (for eksempel NEWYORK0579), ville for eksempel vært et dårlig valg hvis stedet også er lagret som et felt. |
Personnummer |
|
Sammensatte nøkler: Bruke en kombinasjon av flere felt som primærnøkkel
Noen ganger vil du bruke to eller flere felt som primærnøkkel. I en Ordredetaljer-tabell som brukes til å lagre linjeelementene for ordrer, kan du for eksempel bruke to kolonner i primærnøkkelen: Ordre-ID og Produkt-ID. Når en primærnøkkel bruker mer enn én kolonne, kalles den også en sammensatt nøkkel.
Angi primærnøkkelen med feltene du allerede har, i Access
For at en primærnøkkel skal fungere bra, må feltet identifisere hver rad unikt, aldri inneholde en tom verdi eller en nullverdi, og sjelden (helst aldri) endres. Slik angir du primærnøkkelen:
-
Åpne databasen du vil endre.
-
I navigasjonsruten høyreklikker du tabellen som du vil angi primærnøkkelen i, og deretter klikker du Utformingsvisning på hurtigmenyen.
Tips!: Hvis du ikke ser navigasjonsruten, trykker du F11 for å åpne den.
-
Velg feltet eller feltene som du vil bruke som primærnøkkel.
Hvis du vil velge ett felt, klikker du radvelgeren for dette feltet.
Hvis du vil velge mer enn ett felt for å opprette en sammensatt nøkkel, holder du nede CTRL og klikker på radvelgeren for hvert felt.
-
Klikk Primærnøkkel i Verktøy-gruppen på fanen Tabellutforming.
Det legges til en nøkkelindikator til venstre for feltet eller feltene du angir som primærnøkkel.
Fjerne en primærnøkkel i Access
Når du fjerner primærnøkkelen, vil ikke feltet eller feltene som tidligere fungerte som primærnøkkel, lenger gi deg de opplysningene du trenger for å identifisere en post.
Når du fjerner primærnøkkelen, fjernes ikke feltene fra tabellen, men indeksen som ble opprettet for primærnøkkelen, fjernes.
-
Før du kan fjerne en primærnøkkel, må du kontrollere at den ikke deltar i noen tabellrelasjoner. Hvis du prøver å fjerne en primærnøkkel som brukes i én eller flere relasjoner, advares du om at du først må slette relasjonene.
Følg denne fremgangsmåten for å slette en tabellrelasjon:-
Hvis tabellene som finnes i tabellrelasjonen er åpne, må du lukke dem. Du kan ikke slette en tabellrelasjon for åpne tabeller.
-
Klikk på Relasjoner i Relasjoner-gruppen på Databaseverktøy-fanen.
-
Velg Legg til tabeller.
-
Klikk tabellrelasjonslinjen for tabellrelasjonen du vil slette (linjen blir uthevet når den er valgt), og trykk deretter DEL.
-
Klikk Lukk i Relasjoner-gruppen på Fanen Utforming for Relasjoner.
-
-
Etter at du har slettet relasjonene, høyreklikker du tabellen som du vil fjerne primærnøkkelen fra, i navigasjonsruten, og deretter klikker du Utformingsvisning.
Tips!: Hvis du ikke ser navigasjonsruten, trykker du F11 for å åpne den.
-
Klikk radvelgeren for den gjeldende primærnøkkelen.
Hvis primærnøkkelen består av ett enkelt felt, klikker du radvelgeren for dette feltet.
Hvis primærnøkkelen består av flere felt, klikker du radvelgeren for et hvilket som helst felt i primærnøkkelen.
-
Klikk Primærnøkkel i Verktøy-gruppen på fanen Tabellutforming.
Nøkkelindikatoren fjernes fra feltet eller feltene som du tidligere har angitt som primærnøkkelen.
Obs!: Når du lagrer en ny tabell uten å angi en primærnøkkel, blir du spurt om du vil opprette en. Hvis du velger Ja, opprettes et ID-felt som bruker datatypen Autonummer, slik at hver post får en unik verdi. Hvis tabellen allerede inneholder et Autonummer-felt, brukes dette feltet som primærnøkkel.
Endre primærnøkkelen i Access
Hvis du bestemmer deg for å endre primærnøkkelen for en tabell, gjør du det ved å følge disse trinnene:
-
Fjern den eksisterende primærnøkkelen ved hjelp av instruksjonene i delen Fjerne primærnøkkel.
-
Angi primærnøkkel ved hjelp av instruksjonene i delen Angi primærnøkkel.
Mer informasjon
Hvis du vil ha mer informasjon om databaseutforming og valg av passende primærnøkkel, kan du se artiklene: