Tilføje eller ændre den primære nøgle for en tabel

En primær nøgle er et felt eller et sæt af felter med værdier, der er entydige for hele tabellen. Værdierne i nøglen kan bruges til at referere til hele poster, da hver post har sin egen værdi for nøglen. Hver tabel kan kun have én primær nøgle.

Hvis du vil angive en tabels primære nøgle, skal du åbne tabellen i designvisning. Markér det eller de felter, du vil bruge, og klik derefter på Primær nøgle på båndet.

 Bemærk!    Denne artikel er kun beregnet til brug med databaser på computeren. Access administrerer automatisk primære nøgler for nye tabeller i Access-apps og webdatabaser. Selvom det er muligt at tilsidesætte disse automatiske primære nøgle, kan vi ikke anbefale at gøre det.

I denne artikel


Oversigt

Access bruger primær nøgle-felter til flere ting:

  • Til at læse data fra flere tabeller og kombinere dem på en måde, der giver mening. Du kan medtage primær nøgle-felterne i andre tabeller for at henvise tilbage til den tabel, der er kilden til den primære nøgle. I disse andre tabeller kaldes felterne fremmede nøgler. Hvis feltet Kunde-id f.eks. findes i tabellen Kunder, vises det måske også i tabellen Ordrer. I tabellen Kunder er det den primære nøgle. I tabellen Ordrer kaldes det for en fremmed nøgle. En fremmed nøgle er kort sagt en anden tabels primære nøgle. Du kan finde flere oplysninger under Grundlæggende oplysninger om databasedesign.

Primær nøgle og fremmed nøgle

Boble 1 Primær nøgle
Boble 2 Fremmed nøgle

Hvis du flytter eksisterende data til en database, har du måske allerede et felt, du kan bruge som primær nøgle. Et entydigt identifikationsnummer som f.eks. et id-nummer eller serienummer fungerer ofte som en primær nøgle i en tabel. Du kan f.eks. have tabellen Kunder, hvor hver kunde har et entydigt kundenummer. Feltet Kunde-id er den primære nøgle.

Der oprettes automatisk et indeks til den primære nøgle, så det er hurtigere at udføre forespørgsler og andre handlinger. Det sikres også, at hver post har en værdi i primær nøgle-feltet, og at den altid er entydig.

Når du opretter en ny tabel i dataarkvisning, oprettes der automatisk en primær nøgle, som tildeles feltnavnet "Id" og datatypen Autonummerering. Feltet er som standard skjult i dataarkvisning, men du kan se feltet, hvis du skifter til designvisning.

Hvad gør en primær nøgle velegnet?

En velegnet primær nøgle har flere egenskaber:

  • Den identificerer entydigt de enkelte rækker
  • Den er aldrig tom eller indeholder en Null-værdi – den indeholder altid en værdi.
  • De værdier, den indeholder, ændres kun sjældent (ideelt set aldrig)

Hvis du ikke kan identificere en god nøgle, skal du oprette et felt af typen Autonummerering, som du kan bruge som nøgle. Et felt af typen Autonummerering opretter automatisk en værdi til feltet, når en ny post gemmes første gang. Et felt af typen Autonummerering opfylder derfor alle tre egenskaber for en god primær nøgle. Du kan finde oplysninger om at tilføje et felt af typen Autonummerering i afsnittet Tilføje en primær nøgle af typen Autonummerering.

Primær nøglen af typen Autonummerering i tabeldesignvisning

Et felt af typen Autonummerering udgør en god primær nøgle.

Eksempler på dårlige primære nøgler

Alle de felter, der mangler en eller flere af egenskaberne for en velegnet nøgle, er et dårligt valg til en primær nøgle. Her er et par eksempler på nogle felter, der vil være dårlige primære nøgler for en tabel med kontakter, og årsagerne til, at de kan være dårlige valg.

Dårlig primær nøgle Årsag
Personligt navn Er muligvis ikke entydigt og kan ændres
Telefonnummer Vil med stor sandsynlighed blive ændret.
Mailadresse Vil med stor sandsynlighed blive ændret.
Postnummer Mere end én person har samme postnummer.
Kombinationer af fakta og tal Fakta kan bliver ændret, hvilket vil medføre en stor del vedligeholdelse. Det kan skabe forvirring, hvis fakta gentages som et separat felt. Det vil f.eks. være en dårlig ide at kombinere bynavn og et stigende tal, f.eks. KØBENHAVN1234, fordi bynavnet også gemmes som et felt.
CPR-numre
  • Det kræver særlig tilladelse at gemme visse typer personlige oplysninger.
  • Der kan være personer, der ikke har et CPR-nummer
  • En person kan skifte CPR-nummer

Sammensatte nøgler: kombination af flere felter som primær nøgle

I nogle tilfælde vil du muligvis bruge to eller flere felter som den primære nøgle. Tabellen Ordrelinjer kan f.eks. bruge to felter som primær nøgle: Ordre-id og Produkt-id. En nøgle, der har mere end ét felt, kaldes en sammensat nøgle. Du kan oprette en sammensat fremmed nøgle ved at bruge en datadefinitionsforespørgsel til at oprette en begrænsning for flere felter. Du kan finde flere oplysninger i emnet Oprette eller redigere tabeller eller indeks ved hjælp af en datadefinitionsforespørgsel.

Tilføje en primær nøgle af typen Autonummerering

 Bemærk!   Når du opretter en ny tabel i dataarkvisning, oprettes der automatisk en primær nøgle, som tildeles datatypen Autonummerering.

  1. Åbn den database, du vil ændre.
  2. Højreklik i navigationsruden på den tabel, du vil føje den primære nøgle til, og klik derefter på Designvisning i genvejsmenuen.

 Tip!   Hvis du ikke kan se navigationsruden, kan du trykke på F11 for at få vist den.

  1. Find den første tilgængelige tomme række i tabellens designgitter.
  2. Skriv et navn, f.eks. Kunde-id, i feltet Feltnavn.
  3. Klik på rullepilen i feltet Datatype, og klik derefter på Autonummerering.
  4. Klik på Stigende i NyeVærdier under Feltegenskaber for at bruge stigende numeriske værdier i den primære nøgle, eller klik på Vilkårligt for at bruge vilkårlige tal.

Angive den primære nøgle ud fra eksisterende felter

Hvis en primær nøgle skal fungere tilfredsstillende, skal feltet entydigt identificere den enkelte række, den må aldrig indeholde en tom værdi eller en Null-værdi, og den ændres sjældent (ideelt set aldrig).

  1. Åbn den database, du vil ændre.
  2. Højreklik i navigationsruden på den tabel, du vil føje den primære nøgle til, og klik derefter på Designvisning i genvejsmenuen.

 Tip!   Hvis du ikke kan se navigationsruden, kan du trykke på F11 for at få vist den.

  1. Markér det eller de felter, du vil bruge som den primære nøgle.

Hvis du vil markere ét felt, skal du klikke på rækkevælgeren for det ønskede felt.

Hvis du vil markere mere end ét felt, skal du holde Ctrl nede, mens du klikker på rækkevælgeren for hvert felt.

  1. Klik på Primær nøgle i gruppen Funktioner under fanen Design.

Der tilføjes en nøgleindikator til venstre for det eller de felter, du har angivet som primær nøgle.

Fjerne den primære nøgle

Når du fjerner den primære nøgle, er det eller de felter, der har fungeret som primær nøgle, ikke længere det primære id for en post.

Hvis du sletter den primære nøgle, slettes felterne ikke fra tabellen, men det indeks, der er oprettet for den primære nøgle, slettes.

  1. Før du kan fjerne en primær nøgle, skal du sikre dig, at den ikke bruges i tabelrelationer. Hvis du forsøger at fjerne en primær nøgle, der er en del af en eller flere relationer, får du vist en advarsel om, at du skal slette relationen først.

    Sådan sletter du en tabelrelation:   
  1. Hvis tabellerne i tabelrelationen er åbne, skal du lukke dem. Du kan ikke slette en tabelrelation mellem åbne tabeller.
  2. Klik på Relationer i gruppen Relationer under fanen Databaseværktøjer.
  3. Hvis tabellerne i tabelrelationen ikke er synlige, skal du klikke på Vis tabel i gruppen Relationer under fanen Design.
  4. Vælg de tabeller, du vil tilføje, i dialogboksen Vis tabel, klik derefter på Tilføj, og klik på Luk.
  5. Klik på tabelrelationslinjen for den tabelrelation, du vil slette (linjen bliver fed, når den er markeret), og tryk derefter på Delete.
  6. Klik på Luk i gruppen Relationer under fanen Design.
  1. Når du har slettet relationen, skal du i navigationsruden højreklikke på den tabel, hvor du vil slette den primære nøgle og derefter klikke på Designvisning.

 Tip!   Hvis du ikke kan se navigationsruden, kan du trykke på F11 for at få vist den.

  1. Klik på rækkevælgeren for den aktuelle primære nøgle.

Hvis den primære nøgle består af et enkelt felt, skal du klikke på rækkevælgeren for dette felt.

Hvis den primære nøgle består af flere felter, skal du klikke på rækkevælgeren for et vilkårligt felt i den primære nøgle.

  1. Klik på Primær nøgle i gruppen Funktioner under fanen Design.

Nøgleindikatoren fjernes fra det eller de felter, du tidligere har angivet som primær nøgle.

 Bemærk!   Når du gemmer en ny tabel uden at angive en primær nøgle, bliver du spurgt, om du vil oprette den. Hvis du vælger Ja, oprettes et id-felt af datatypen Autonummerering, så der er defineret en entydig værdi for hver post. Hvis tabellen allerede indeholder et felt af typen Autonummerering, bruges det pågældende felt som primær nøgle.

Ændre den primære nøgle

Hvis du skal ændre en tabels primære nøgle, skal du benytte følgende fremgangsmåde:

  1. Fjern den eksisterende primære nøgle ved hjælp af vejledningen i afsnittet Fjerne den primære nøgle.
  2. Angiv den primære nøgle ved hjælp af vejledningen i afsnittet Angive den primære nøgle.
 
 
Gælder for:
Access 2013