En forespørgsel er et sæt instruktioner, du kan bruge til at arbejde med data. Du kører en forespørgsel for at udføre disse instruktioner. Ud over at returnere resultater – som kan sorteres, grupperes eller filtreres – kan en forespørgsel også oprette, kopiere, slette eller ændre data.
I denne artikel forklares det, hvordan du kører forespørgsler, og du får kun en kort oversigt over de forskellige typer forespørgsler. Artiklen beskriver også fejlmeddelelser, der kan opstå, når du kører forskellige typer forespørgsler, og indeholder trin, du kan udføre for at omgå eller rette disse fejl.
Denne artikel indeholder ikke en trinvis vejledning til oprettelse af forespørgsler.
Vigtigt!: Du kan ikke køre handlingsforespørgsler, hvis en database kører i deaktiveret tilstand – en tilstand med begrænset funktionalitet, som Access bruger til at beskytte dine data under visse omstændigheder. Du får muligvis vist en dialogboksadvarsel, eller der vises muligvis en advarsel på meddelelseslinjen.
Du kan få mere at vide om deaktiveret tilstand, og hvordan du aktiverer handlingsforespørgsler, i afsnittet Kør en handlingsforespørgsel.
Hvad vil du foretage dig?
Køre en udvælgelses- eller krydstabuleringsforespørgsel
Du kan bruge udvælgelsesforespørgsler og krydstabuleringsforespørgsler til at hente og præsentere data og til at forsyne formularer og rapporter med data. Når du kører en udvælgelses- eller krydstabuleringsforespørgsel, viser Access resultaterne i Dataarkvisning.
Kør forespørgslen
-
Find forespørgslen i navigationsruden.
-
Benyt en af følgende fremgangsmåder:
-
Dobbeltklik på den forespørgsel, du vil køre.
-
Klik på den forespørgsel, du vil køre, og tryk derefter på Enter.
-
Hvis den forespørgsel, du vil køre, aktuelt er åben i designvisning, kan du også køre den ved at klikke på Kør i gruppen Resultater under fanen Design på båndet, som er en del af Brugergrænsefladen Microsoft Fluent (båndet).
Køre en handlingsforespørgsel
Der findes fire typer handlingsforespørgsler: tilføjelsesforespørgsler, sletteforespørgsler, opdateringsforespørgsler og tabeloprettelsesforespørgsler. Med undtagelse af tabeloprettelsesforespørgsler (som opretter nye tabeller) foretager handlingsforespørgsler ændringer af dataene i tabeller, de er baseret på. Disse ændringer kan ikke uden videre fortrydes, f.eks. ved at trykke på Ctrl+Z. Hvis du foretager ændringer ved hjælp af en handlingsforespørgsel, som du senere beslutter, at du ikke vil foretage, skal du normalt gendanne dataene fra en sikkerhedskopi. Derfor skal du altid sørge for, at du har en ny sikkerhedskopi af de underliggende data, før du kører en handlingsforespørgsel.
Du kan mindske risikoen for at køre en handlingsforespørgsel ved først at få vist de data, der vil blive handlet på. Der er to måder at gøre dette på:
-
Få vist handlingsforespørgslen i dataarkvisning, før du kører den. Det gør du ved at åbne forespørgslen i designvisning, klikke på Vis i Access- statuslinjeog derefter klikke på Dataarkvisning i genvejsmenuen. Hvis du vil skifte tilbage til designvisning, skal du klikke på Vis igen og derefter klikke på Designvisning i genvejsmenuen.
-
Skift forespørgslen til en udvælgelsesforespørgsel, og kør den derefter.
Bemærk!: Sørg for at notere, hvilken type handlingsforespørgsel (tilføj, opdater, tabeloprettelse eller slet), du starter med, så du kan ændre forespørgslen tilbage til den pågældende type, når du har gennemset dataene med denne metode.
Køre en handlingsforespørgsel som en udvælgelsesforespørgsel
-
Åbn handlingsforespørgslen i designvisning.
-
Klik på Vælg i gruppen Forespørgselstype under fanen Design.
-
Klik på Kør i gruppen Resultater under fanen Design.
-
Kør forespørgslen
Når du er klar til at køre en handlingsforespørgsel, skal du dobbeltklikke på den i navigationsruden eller klikke på den og derefter trykke på Enter.
Vigtigt!: Access deaktiverer som standard alle handlingsforespørgsler i en database, medmindre du angiver, at du har tillid til databasen. Du kan angive, at du har tillid til en database ved hjælp af meddelelseslinjen lige under båndet.
Angiv tillid til en database
-
Klik på Indstillinger i meddelelseslinjen.
Dialogboksen Microsoft Office-sikkerhedsindstillinger vises.
-
Vælg Aktivér dette indhold , og klik derefter på OK.
Køre en parameterforespørgsel
En parameterforespørgsel beder dig om en værdi, når du kører den. Når du angiver værdien, anvender parameterforespørgslen den som et feltkriterium. Hvilket felt det anvender kriteriet på, er angivet i forespørgselsdesignet. Hvis du ikke angiver en værdi, når du bliver bedt om det, fortolker parameterforespørgslen dit input som en tom streng.
En parameterforespørgsel er altid en anden type forespørgsel. De fleste parameterforespørgsler er udvælgelsesforespørgsler eller krydstabuleringsforespørgsler, men tilføjelses-, tabeloprettelses- og opdateringsforespørgsler kan også være parameterforespørgsler.
Du kører en parameterforespørgsel i overensstemmelse med dens anden forespørgselstype, men generelt skal du benytte følgende fremgangsmåde.
Kør forespørgslen
-
Find forespørgslen i navigationsruden.
-
Gør et af følgende:
-
Dobbeltklik på den forespørgsel, du vil køre.
-
Klik på den forespørgsel, du vil køre, og tryk derefter på Enter.
-
-
Når parameterprompten vises, skal du angive en værdi, der skal anvendes som kriterium.
Køre en SQL-specifik forespørgsel
Der findes tre primære typer SQL-forespørgsel: foreningsforespørgsler, pass-through-forespørgsler og datadefinitionsforespørgsler.
Foreningsforespørgsler kombinerer data fra to eller flere tabeller, men ikke på samme måde som andre forespørgsler. Mens de fleste forespørgsler kombinerer data ved at sammenkæde rækker, kombinerer foreningsforespørgsler data ved at tilføje rækker. Foreningsforespørgsler adskiller sig fra tilføjelsesforespørgsler i den pågældende foreningsforespørgsler ændrer ikke de underliggende tabeller. Foreningsforespørgsler tilføjer rækkerne i et postsæt, der ikke bevares, når forespørgslen lukkes.
Pass-through-forespørgsler behandles ikke af det databaseprogram, der følger med Access. I stedet sendes de direkte til en fjerndatabaseserver, der behandler og derefter overfører resultaterne tilbage til Access.
Datadefinitionsforespørgsler er en særlig type forespørgsel, der ikke behandler data. I stedet opretter, sletter eller redigerer datadefinitionsforespørgsler andre databaseobjekter.
SQL-specifikke forespørgsler kan ikke åbnes i designvisning. De kan kun åbnes i SQL-visning eller køres. Med undtagelse af datadefinitionsforespørgsler åbner kørsel af en SQL-specifik forespørgsel den i dataarkvisning.
Kør forespørgslen
-
Find forespørgslen i navigationsruden.
-
Gør et af følgende:
-
Dobbeltklik på den forespørgsel, du vil køre.
-
Klik på den forespørgsel, du vil køre, og tryk derefter på Enter.
-
Fejlfinding af en fejlmeddelelse
I følgende tabel vises nogle almindelige fejlmeddelelser, du kan støde på. Disse fejl kan vises enten som en meddelelse i en celle (i stedet for en forventet værdi) eller som en fejlmeddelelse. De afsnit, der følger listen, indeholder procedurer, du kan bruge til at løse disse fejl.
Bemærk!: Dette indhold i denne tabel er ikke udtømmende. Hvis den ikke indeholder den fejlmeddelelse, du har modtaget, kan du sende feedback ved hjælp af formularen i slutningen af denne artikel og medtage specifikke oplysninger om fejlmeddelelsen i kommentarfeltet.
Fejlmeddelelse |
Problem |
Løsning |
Skriv uoverensstemmelse i udtryk |
Forespørgslen kan være joinfelter, der har forskellige datatyper. |
Kontrollér forespørgselsdesignet, og sørg for, at de sammenkædede felter har samme datatype. Du kan finde en vejledning i afsnittet Kontrollér de joinforbundne felter i forespørgslen. |
Posten slettes |
Dette kan ske, hvis enten objektet eller databasen er beskadiget. |
Komprimer og reparer databasen. Du kan finde en vejledning i afsnittet Komprimer og reparer din database. |
Cirkulær reference forårsaget af alias |
Det alias, der er tildelt et felt, er det samme som en komponent i udtrykket for det pågældende felt. Et alias er et navn, der gives til et udtryk i rækken Felt i forespørgselsdesigngitteret, som ikke er et faktisk felt. Access tildeler dig aliasset, hvis du ikke selv gør det. F.eks. UDTRYK1. Et alias efterfølges straks af et kolon (:) og derefter af udtrykket. Når du kører forespørgslen, bliver aliasset kolonnenavnet i dataarket. |
Skift aliasset. Du kan finde en vejledning i afsnittet Skift et feltalias. |
#Error |
Denne fejl kan opstå, når værdien af et beregnet felt er større end den værdi, der tillades af feltets indstilling for egenskaben Feltstørrelse . Dette sker også, når nævneren for et beregnet felt er eller evalueres til nul (0). |
Sørg for, at nævneren for det beregnede felt ikke evalueres til nul (0). Hvis det er relevant, kan du ændre egenskaben Feltstørrelse . |
#Deleted |
Den post, der henvises til, er blevet slettet. |
Hvis posten er blevet slettet ved et uheld, skal den gendannes fra en sikkerhedskopi. Hvis sletningen var tilsigtet, kan du afvise denne fejlmeddelelse ved at trykke på Skift+F9 for at opdatere forespørgslen. |
Kontrollér de sammenkædede felter i din forespørgsel
Hvis du vil kontrollere datatyperne for felter i en forespørgsel, skal du se på kildetabellerne i designvisning og undersøge egenskaberne for de felter, du kontrollerer.
-
Åbn forespørgslen i designvisning. Joinforbindelser vises som linjer, der forbinder felter i kildetabellerne. Bemærk tabel- og feltnavnene for hver joinforbindelse.
-
Højreklik på hver tabel i navigationsruden, der har et eller flere felter, der er joinforbundet i forespørgslen, og klik derefter på Designvisning.
1. Sammenkædede felter med forskellige datatyper.
2. Højreklik på tabellen, og klik derefter på Designvisning.
-
For hver joinforbindelse skal du sammenligne værdierne i kolonnen Datatype i tabeldesigngitteret for de felter, der er involveret i den pågældende joinforbindelse.
1. Kontrollér datatypen for de sammenkædede felter i tabellens designvisning.
-
Hvis du vil skifte til en tabel, så du kan se dens felter, skal du klikke på fanen med den pågældende tabels navn.
Komprimer og reparer din database
Hvis du kører værktøjet Komprimer og reparer database i Access, kan det forbedre databasens ydeevne. Dette værktøj opretter en kopi af databasefilen og omarrangerer, hvordan databasefilen gemmes på disken, hvis den er fragmenteret. Når komprimerings- og reparationsprocessen er fuldført, vil den komprimerede database have genvundet spildplads og er normalt mindre end den oprindelige. Ved at komprimere databasen ofte kan du sikre den optimale ydeevne af databaseprogrammet og også løse fejl, der opstår som følge af hardwareproblemer, strømsvigt eller overspændinger og lignende årsager.
Når komprimeringen er fuldført, forbedres forespørgselshastigheden, fordi de underliggende data er blevet omskrevet til tabellerne på sammenhængende sider. Scanning af sammenhængende sider er meget hurtigere end at scanne fragmenterede sider. Forespørgsler optimeres også efter hver databasekomprimering.
Under komprimeringen kan du bruge det oprindelige navn til den komprimerede databasefil, eller du kan bruge et andet navn til at oprette en separat fil. Hvis du bruger det samme navn, og databasen komprimeres korrekt, erstatter Access automatisk den oprindelige fil med den komprimerede version.
Angiv en indstilling, der automatiserer denne proces
-
Klik på Filer > Indstillinger for at åbne dialogboksen Access-indstillinger .
-
Klik på Aktuel database, og markér afkrydsningsfeltet Komprimer ved lukning under Programindstillinger.
Dette medfører, at Access automatisk komprimerer og reparerer databasen, hver gang den lukkes.
Komprimer og reparer databasen manuelt
-
Klik på Databaseværktøjer > Komprimer og reparer database.
Ændre et feltalias
-
Åbn forespørgslen i designvisning.
-
I forespørgselsdesigngitteret skal du søge efter felter, der har aliasser. Disse har et kolon i slutningen af feltnavnet, som i Navn:.
-
Kontrollér hvert alias for at sikre, at aliasset ikke svarer til navnet på et felt, der er en del af aliasset' udtryk. Hvis det er, skal du ændre aliasset.