Oprette og bruge et indeks til at forbedre ydeevnen

Hvis du ofte søger i en tabel eller sorterer dens poster efter et bestemt felt, kan du arbejde hurtigere, hvis du opretter et indeks til feltet. Microsoft Office Access 2007 bruger indeks i en tabel, ligesom du bruger indekset i en bog: til at finde data. Office Access 2007 slår placeringen af dataene op i indekset. I nogle tilfælde, f.eks. ved en primær nøgle, opretter Access automatisk et indeks for dig. I andre tilfælde kan du selv 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.

Denne artikel indeholder

Hvad er et indeks?

Beslutte, hvilke felter der skal indekseres

Oprette et indeks

Slette et indeks

Vise og redigere indeks

Automatisk oprettelse af indeks

Hvad er et indeks?

Hvis du bruger et indeks, kan Microsoft Office Access 2007 hurtigere finde og sortere poster. I et indeks gemmes placeringen af poster på basis af det eller de felter, du vælger at indeksere. Når Access har hentet placeringen fra indekset, kan programmet derefter hente data ved at gå direkte til den korrekte placering. Derfor kan det være meget hurtigere at bruge et indeks end at skulle gennemsøge alle posterne for at finde de ønskede data.

Toppen af siden

Beslutte, hvilke felter der skal indekseres

Du kan oprette et indeks, der er baseret på et enkelt felt eller flere felter. Du skal sikkert indeksere felter, du ofte søger i, felter, du sorterer, samt felter, du forbinder med andre tabeller i forespørgsler på flere tabeller. Indeks kan øge hastigheden af søgninger og forespørgsler, men de kan nedsætte 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 indeksene, hver gang en post bliver tilføjet eller ændret. Tilføjelse af poster ved hjælp af en tilføjelsesforespørgsel eller ved tilføjelse af importerede poster vil sikkert også være langsommere, hvis destinationstabellen indeholder indeks.

Bemærk: Den primære nøgle til en tabel indekseres automatisk. Du kan finde flere oplysninger om primære nøgler i de artikler, der er anført i afsnittet Se også.

Du kan ikke indeksere et felt, hvis datatype er OLE-objekt eller Vedhæftet fil. For andre felter kan du overveje indeksering, hvis alle nedenstående betingelser gælder:

  • Feltets datatype er Tekst, Notat, Tal, Dato og klokkeslæt, Autonummerering, Valuta, Ja/Nej eller Hyperlink.

  • 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 regner med ofte at skulle søge eller sortere efter to eller flere felter ad gangen, kan du oprette et indeks til denne kombination af felter. Hvis du f.eks. ofte angiver kriterier for felterne Leverandør og Produktnavn, er det praktisk at oprette et indeks med begge felter.

Når du sorterer en tabel efter et indeks med flere felter, sorteres 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, sorteres derpå efter det andet felt, der er defineret for indekset, osv.

Du kan medtage op til ti felter i et indeks med flere felter.

Toppen af siden

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

Beskrivelse

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, tillader Access ikke, at du indtaster en ny værdi i feltet, hvis værdien allerede findes i det samme felt i en anden post. Access opretter automatisk et entydigt indeks for primære nøgler, men du kan også forhindre dubletter i andre felter. Du kan f.eks. oprette et entydigt indeks i et felt, der indeholder løbenumre, så to produkter ikke kan have samme løbenummer.

Du kan finde flere oplysninger om primære nøgler ved at klikke på hyperlinkene i afsnittet Se også.

Oprette et indeks med et enkelt felt    

  1. Højreklik i navigationsruden på navnet på den tabel, du vil oprette indekset i, og klik derefter på Designvisning i genvejsmenuen.

  2. Klik på Feltnavn for det felt, du vil indeksere.

  3. Klik på fanen Generelt under Feltegenskaber.

  4. 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.

  5. Gem ændringerne ved at klikke på Gemværktøjslinjen Hurtig adgang eller trykke på CTRL+S.

Oprette 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ækkes skal indsættes, og derefter klikke på Indsæt rækker i genvejsmenuen.

  1. Højreklik i navigationsruden på navnet på den tabel, du vil oprette indekset i, og klik derefter på Designvisning i genvejsmenuen.

  2. 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.

  3. 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.

  4. Klik på pilen i kolonnen Feltnavn, og klik derefter på det første felt, du vil bruge til indekset.

  5. 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.

    Bemærk: Som standard er sorteringsrækkefølgen Stigende

  6. Hvis du vil ændre sorteringsrækkefølgen af feltværdierne, skal du klikke på Stigende eller Faldende i kolonnen Sorteringsrækkefølge i indeksvinduet.

  7. 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.

Egenskab

Værdi

Primær

Hvis den er indstillet til Ja, er indekset den primære nøgle.

UniktIndeks

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.

  1. Gem ændringerne ved at klikke på Gemværktøjslinjen Hurtig adgang.

    Genvejstaster  Tryk på CTRL+S.

  2. Luk indeksvinduet.

Toppen af siden

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.

  1. Højreklik i navigationsruden på navnet på den tabel, du vil slette indekset i, og klik derefter på Designvisning i genvejsmenuen.

  2. 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.

  3. Marker den eller de rækker, der indeholder det indeks, du vil slette, i indeksvinduet, og tryk derefter på DELETE.

  4. Gem ændringerne ved at klikke på Gemværktøjslinjen Hurtig adgang.

    Genvejstaster  Tryk på CTRL+S.

  5. Luk vinduet Indeks.

Toppen af siden

Vise og redigere indeks

Du kan få vist indeksene for en tabel for at vurdere deres påvirkning af ydeevnen eller for at sikre dig, at bestemte felter er indekseret.

  1. Højreklik i navigationsruden på navnet på den tabel, du vil redigere indekset i, og klik derefter på Designvisning i genvejsmenuen.

  2. 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.

  3. Du kan se indeksene og indeksegenskaberne og redigere dem efter behov.

  4. Gem ændringerne ved at klikke på Gemværktøjslinjen Hurtig adgang.

    Genvejstaster  Tryk på CTRL+S.

  5. Luk indeksvinduet.

Toppen af siden

Automatisk oprettelse af indeks

I nogle tilfælde opretter Access automatisk indeks for dig. Der oprettes f.eks. automatisk et indeks for alle de felter, du angiver som en tabels primære nøgle.

En anden kilde til automatisk oprettelse af indeks er indstillingen Autoindekser ved import/oprettelse i dialogboksen Access-indstillinger. Access indekserer automatisk alle felter, hvis navne begynder eller slutter med de tegn, der er angivet i boksen Autoindekser ved import/oprettelse, f.eks. id, nøgle, programkode eller nummer. Hvis du vil se eller ændre den aktuelle indstilling, skal du følge disse trin:

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Access-indstillinger.

  2. Klik på Objekt-designere, og tilføj, rediger eller fjern derefter værdier i boksen Autoindekser ved import/oprettelse under Tabeldesign. Brug et semikolon (;) til at adskille værdier.

    Bemærk: Hvis et feltnavn begynder eller slutter med en værdi, der er angivet i boksen, bliver feltet automatisk indekseret.

  3. Klik på OK.

Da hvert yderligere indeks kræver ekstra arbejde af Access, kører programmet langsommere under tilføjelse eller opdatering af data. Derfor bør du evt. overveje at ændre de værdier, der er vist i boksen Autoindekser ved import/oprettelse, eller reducere antallet af værdier for at minimere antallet af oprettede indeks.

Toppen af siden

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×