Hvis du ofte søger i en tabel i Access eller sorterer dens poster efter et bestemt felt, kan du fremskynde disse handlinger ved at oprette et indeks for feltet. Access bruger indekser i en tabel, når du bruger et indeks i en bog: til at finde data Access søger efter placeringen af dataene i indekset. I nogle tilfælde, f.eks. for en primær nøgle, opretter Access automatisk et indeks for dig. Andre gange kan det være en god ide selv at oprette et indeks.
I denne artikel introduceres indeks med oplysninger om, hvilke felter du bør indeksere, samt hvordan et indeks oprettes, slettes eller ændres. Der findes også en beskrivelse af de betingelser, der får Access til automatisk at oprette indeks.
I denne artikel
Bemærk!: Du kan ikke bruge metoderne i denne artikel til at oprette et indeks for en tabel i en webdatabase. En webdatabases ydeevne afhænger af ydeevnen for flere faktorer, som f.eks den SharePoint-server, der er vært for webdatabasen.
Hvad er et indeks?
Du kan bruge et indeks til at hjælpe Access med at finde og sortere poster hurtigere. Et indeks lagrer placeringen af poster baseret på det eller de felter, du vælger at indeksere. Når Access henter placeringen fra indekset, kan det derefter hente data ved at gå direkte til den korrekte placering. På denne måde kan det være meget hurtigere at hente data i forhold til at skulle scanne alle posterne for at finde dem.
Beslutte, hvilke felter der skal indekseres
Du kan oprette indeks, der er baseret på et enkelt felt eller flere felter. Du vil sandsynligvis indeksere felter, som du ofte søger i, felter, du sorterer og felter, du sammenkæder med felter fra andre tabeller i forskellige tabelforespørgsler. Indeks kan fremskynde søgninger og forespørgsler, men de kan sænke ydeevnen, når du tilføjer eller opdaterer data. Når du indtaster data i en tabel, der indeholder et eller flere indekserede felter, skal Access opdatere indeks, hver gang en post tilføjes eller ændres. Når poster tilføjes ved hjælp af en tilføjelsesforespørgsel eller ved at tilføje importerede poster, kan det godt gå langsommere, hvis destinationstabellen indeholder indeks.
Bemærk!: Den primære nøgle i en tabel indekseres automatisk.
Du kan ikke indeksere et felt, hvis datatype er OLE-objekt, beregnet eller en vedhæftet fil. For andre felter kan du overveje indeksering, hvis alle nedenstående betingelser er opfyldt:
-
Feltets datatype er Kort tekst, Lang tekst, Tal, Dato/klokkeslæt, Autonummerering, Valuta, Ja/Nej eller Link.
-
Du forventer at skulle søge efter værdier, der er gemt i feltet.
-
Du forventer at skulle sortere værdier i feltet.
-
Du forventer at skulle gemme mange forskellige værdier i feltet. Hvis mange af værdierne i feltet er ens, vil indekset måske ikke gøre forespørgsler markant hurtigere.
Indeks med flere felter
Hvis du tror, at du ofte vil søge efter eller sortere efter to eller flere felter ad gangen, kan du oprette et indeks for den pågældende kombination af felter. Hvis du f.eks. ofte angiver kriterier for felterne Leverandør og Produktnavn i den samme forespørgsel, giver det mening at oprette et indeks med flere felter på begge felter.
Når du sorterer en tabel efter et indeks med flere felter, sorterer Access først efter det første felt, der er defineret for indekset. Du angiver rækkefølgen af felterne, når du opretter et indeks med flere felter. Hvis der findes poster med dubletværdier i det første felt, sorterer Access derpå efter det andet felt, der er defineret for indekset, osv.
Du kan medtage op til ti felter i et indeks med flere felter.
Oprette et indeks
Hvis du vil oprette et indeks, skal du først beslutte dig for, om du vil have et indeks med et eller flere felter. Du kan oprette et indeks i et enkelt felt ved at angive egenskaben Indekseret. I nedenstående tabel vises en oversigt over de mulige indstillinger for egenskaben Indekseret.
Indstilling for egenskaben Indekseret |
Betydning |
---|---|
Nej |
Opretter ikke et indeks for dette felt (eller slet det eksisterende indeks). |
Ja - dubletter tillades |
Opretter et indeks til dette felt. |
Ja - ingen dubletter |
Opretter et entydigt indeks til dette felt. |
Hvis du opretter et entydigt indeks, giver Access dig ikke mulighed for at angive en ny værdi i feltet, hvis denne værdi allerede findes i det samme felt i en anden post. Access opretter automatisk et entydigt indeks for primære nøgler, men det kan også være en god ide at forbyde dublerede værdier i andre felter. Du kan f.eks. oprette et entydigt indeks i et felt, der gemmer serienumre, så ikke to produkter har samme serienummer.
Opret et indeks med et enkelt felt
-
Højreklik i navigationsruden på navnet på den tabel, du vil oprette indekset i, og klik derefter på Designvisning i genvejsmenuen.
-
Klik på Feltnavn for det felt, du vil indeksere.
-
Klik på fanen Generelt under Feltegenskaber.
-
Klik på Ja - dubletter tillades i egenskaben Indekseret, hvis du vil tillade dubletter, eller klik på Ja - ingen dubletter for at oprette et entydigt indeks.
-
Gem ændringerne ved at klikke på Gem på værktøjslinjen Hurtig adgang eller trykke på Ctrl+S.
Opret et indeks med flere felter
Hvis du vil oprette et indeks med flere felter for en tabel, skal du medtage en række for hvert felt i indekset og kun medtage indeksnavnet i den første række. I Access behandles alle rækker som en del af det samme indeks, indtil programmet kommer til en række, der indeholder et andet indeksnavn. Du kan indsætte en række ved at højreklikke det sted, hvor rækken skal indsættes, og derefter klikke på Indsæt rækker i genvejsmenuen.
-
Højreklik i navigationsruden på navnet på den tabel, du vil oprette indekset i, og klik derefter på Designvisning i genvejsmenuen.
-
Klik på Indeks i gruppen Vis/skjul under fanen Design.
Indeksvinduet vises. Du kan ændre størrelsen af vinduet, så der vises nogle tomme rækker og indeksegenskaberne.
-
Skriv et navn til indekset i den første tomme række i kolonnen Indeksnavn. Du kan basere indeksnavnet på et af indeksfelterne eller bruge et andet navn.
-
Klik på pilen i kolonnen Feltnavn, og klik derefter på det første felt, du vil bruge til indekset.
-
Lad kolonnen Indeksnavn stå tom i den næste række, og klik derefter på det andet felt til indekset i kolonnen Feltnavn. Gentag dette trin, indtil du har valgt alle de felter, du vil medtage i indekset.
-
Hvis du vil ændre sorteringsrækkefølgen af feltværdierne, skal du klikke på Stigende eller Faldende i kolonnen Sorteringsrækkefølge i indeksvinduet. Sorteringsrækkefølgen er som standard Faldende.
-
Angiv indeksegenskaberne for rækken i kolonnen Indeksnavn, der indeholder navnet på indekset under Indeksegenskaber i vinduet Indeks. Angiv egenskaberne i henhold til nedenstående tabel.
Etiket
Værdi
Primær
Hvis den er indstillet til Ja, er indekset den primære nøgle.
Unik
Hvis den er indstillet til Ja, skal hver eneste værdi i indekset være entydig.
IgnorerNulls
Hvis den er indstillet til Ja, udelades poster med en Null-værdi i de indekserede felter.
-
Gem ændringerne ved at klikke på Gem på værktøjslinjen Hurtig adgang eller ved at trykke på CTRL+S.
-
Luk indeksvinduet.
Slette et indeks
Hvis et indeks bliver overflødigt eller påvirker ydeevnen for meget, kan du slette det. Når du sletter et indeks, fjerner du kun indekset, og ikke dets felter.
-
Højreklik i navigationsruden på navnet på den tabel, du vil slette indekset i, og klik derefter på Designvisning i genvejsmenuen.
-
Klik på Indeks i gruppen Vis/skjul under fanen Design.
Indeksvinduet vises. Du kan ændre størrelsen af vinduet, så der vises nogle tomme rækker og indeksegenskaberne.
-
Marker den eller de rækker, der indeholder det indeks, du vil slette, i indeksvinduet, og tryk derefter på DELETE.
-
Gem ændringerne ved at klikke på Gem på værktøjslinjen Hurtig adgang eller trykke på CTRL+S.
-
Luk vinduet Indeks.
Vise og redigere indeks
Du kan få vist indeks for en tabel for at vurdere deres påvirkning af ydeevnen eller for at sikre dig, at bestemte felter er indekseret.
-
Højreklik i navigationsruden på navnet på den tabel, du vil redigere indekset i, og klik derefter på Designvisning i genvejsmenuen.
-
Klik på Indeks i gruppen Vis/skjul under fanen Design.
Indeksvinduet vises. Du kan ændre størrelsen af vinduet, så der vises nogle tomme rækker og indeksegenskaberne.
-
Du kan se indeksene og indeksegenskaberne og redigere dem efter behov.
-
Gem ændringerne ved at klikke på Gem på værktøjslinjen Hurtig adgang eller trykke på CTRL+S.
-
Luk vinduet Indeks.
Automatisk oprettelse af indeks
I nogle tilfælde opretter Access automatisk indekser for dig. Der oprettes f.eks. automatisk et indeks for alle felter, du angiver som en tabels primære nøgle.
En anden kilde til automatisk oprettelse af indeks er indstillingen Autoindeksér ved import/oprettelse i dialogboksen Access-indstillinger . Access indekserer automatisk alle felter med navne, der starter eller slutter med de tegn, der er angivet i feltet Autoindekser ved import/oprettelse , f.eks . id, nøgle, kode eller antal. Hvis du vil se eller ændre den aktuelle indstilling, skal du gøre følgende:
-
Klik på Filer > Indstillinger.
-
Klik på Objektdesignere, og tilføj, rediger eller fjern derefter værdierne i boksen Autoindeksér ved import/oprettelse under Tabeldesignvisning. Brug et semikolon (;) til at adskille værdier.
Bemærk!: Hvis et feltnavn starter eller slutter med en værdi, der er angivet i boksen, bliver feltet automatisk indekseret.
-
Klik på OK.
Da hvert ekstra indeks kræver, at Access udfører yderligere arbejde, reduceres ydeevnen, når du tilføjer eller opdaterer data. Du kan derfor overveje at ændre de værdier, der vises i feltet Autoindeksér ved import/oprettelse , eller reducere antallet af værdier for at minimere antallet af oprettede indekser.