Skapa och köra en borttagningsfråga
Applies ToAccess för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Om du antingen snabbt vill ta bort en mängd data eller ta bort en uppsättning data regelbundet i en Access-skrivbordsdatabas kan en borttagnings- eller uppdateringsfråga vara användbar eftersom frågorna gör det möjligt att ange villkor för att snabbt hitta och ta bort data. Att använda en fråga kan också vara en tidssparläge eftersom du kan återanvända en sparad fråga.

Obs!: Innan du tar bort data eller kör en borttagningsfråga bör du se till att du har en säkerhetskopia av din Access-databas för skrivbordet.

Om du bara vill ta bort några få poster behöver du inte en fråga. Öppna bara tabellen i databladsvyn, markera fälten (kolumnerna) eller posterna (raderna) som du vill ta bort och tryck sedan på DELETE.

Viktigt!: Informationen i den här artikeln är endast avsedd att användas med skrivbordsdatabaser. Du kan inte använda ta bort eller uppdatera frågor i Access-webbappar.

I den här artikeln

Välja en frågetyp

Du kan antingen använda en uppdateringsfråga eller en borttagningsfråga för att ta bort data från databasen. Välj en fråga baserat på informationen i följande tabell:

Typ av fråga

När den ska användas

Resultat

Använda en borttagningsfråga

Så här tar du bort hela poster (rader) från en tabell eller från två relaterade tabeller samtidigt.

Obs!: Om posterna finns på 1-sidan av en 1:N-relation kan du behöva ändra relationen innan du kör borttagningsfrågan. Se avsnittet om hur du tar bort data från relaterade tabeller.

Ta bort frågor tar bort alla data i varje fält, inklusive nyckelvärdet som gör en post unik

Använda en uppdateringsfråga

Så här tar du bort enskilda fältvärden från en tabell.

Gör det enklare att ta bort värden genom att uppdatera befintliga värden till antingen ett nullvärde (det vill säga inga data) eller en nollängdssträng (ett par dubbla citattecken utan blanksteg mellan dem).

Överst på sidan

Saker att verifiera innan du använder en fråga för att ta bort data

  • Kontrollera att filen inte är en skrivskyddad fil:

    1. Högerklicka på Start och klicka på Öppna Utforskaren.

    2. Högerklicka på databasfilen och klicka på Egenskaper.

    3. Kontrollera om attributet Skrivskydd är markerat.

  • Kontrollera att du har rätt behörighet för att ta bort poster från databasen. Om du är osäker kontaktar du systemadministratören eller databasdesignern.

  • Kontrollera att du har aktiverat innehållet i databasen. Som standard blockerar Access alla redigeringsfrågor (ta bort, uppdatera och skapa tabellfrågor) såvida du inte först litar på databasen. Mer information om hur du litar på en databas finns i avsnittet Stoppa inaktiverat läge från att blockera en fråga.

  • Be andra användare av databasen att stänga alla tabeller, formulär, frågor och rapporter som använder de data som du vill ta bort. På så sätt undviker du låsfel.

  • Innan du redigerar eller tar bort poster är det en bra idé att göra en säkerhetskopia av databasen om du vill ångra ändringarna.

Tips: Om ett stort antal användare ansluter till databasen kan du behöva stänga databasen och sedan öppna den i exklusivt läge.

Så här öppnar du en databas i exklusivt läge

  1. Klicka på fliken Arkiv > Öppna.

  2. Bläddra till och peka för att markera databasen, klicka på pilen bredvid knappen Öppna och klicka sedan på Öppna exklusivt.

    En fil öppnas i exklusivt läge

Säkerhetskopiera databasen

  1. Klicka på fliken Arkiv och peka på Spara som.

  2. Klicka på Spara databas som och sedan på Säkerhetskopiera databas. Den ursprungliga filen stängs, säkerhetskopian skapas och sedan öppnas den ursprungliga filen igen.

  3. Klicka på Spara som och ange ett namn och en plats för säkerhetskopian och klicka sedan på Spara.

Obs!: Om du använder en skrivskyddad databas eller en databas som skapats i den tidigare versionen av Access kan du få ett meddelande om att det inte går att skapa en säkerhetssäkerhetskopierad databas.

Om du vill återställa till en säkerhetskopia avslutar du och byter namn på originalfilen så att säkerhetskopian kan ha samma namn som originalversionen. Använd den ursprungliga versionens namn som namn på säkerhetskopian, och öppna säkerhetskopian i Access.

Använda en borttagningsfråga

Om du vill skapa en borttagningsfråga klickar du på fliken Skapa i gruppen Frågor och klickar på Frågedesign. Dubbelklicka på varje tabell som du vill ta bort poster från och klicka sedan på Stäng.

Tabellen visas som ett fönster i den övre delen av frågerutnätet. Dubbelklicka på asterisken (*) i listan med fält om du vill lägga till alla fält i tabellen i designrutnätet.

Använda ett specifikt villkor i en borttagningsfråga

Viktigt!: Använd villkor för att bara returnera de poster som du vill ta bort. Annars tas alla poster i tabellen bort med borttagningsfrågan.

Dubbelklicka på det fält som du vill ange som villkor för borttagning, ange ett villkor på raden Villkor i frågedesignern och avmarkera sedan kryssrutan Visa för varje villkorsfält.

Ett exempel på när du kanske vill använda det här alternativet: Anta att du vill ta bort alla väntande beställningar för en kund. Om du bara vill hitta posterna lägger du till fälten Kund-ID och Orderdatum i frågerutnätet och anger sedan kundens ID-nummer och det datum då kundens order blev ogiltiga.

  1. Klicka på Visa > databladsvy på fliken Design.

  2. Kontrollera att frågan returnerar de poster som du vill ta bort och tryck sedan på CTRL+S för att spara frågan.

  3. Om du vill köra frågan dubbelklickar du på frågan i navigeringsfönstret.

Överst på sidan

Använda en uppdateringsfråga

Obs!: Du kan inte använda alternativet uppdatera fråga i en Access-webbapp.

I det här avsnittet förklaras hur du använder en uppdateringsfråga för att ta bort enskilda fält från tabeller. Kom ihåg att om du kör en uppdateringsfråga för att ta bort data ändras de befintliga värdena till antingen NULL eller en nollängdssträng (ett par dubbla citattecken utan blanksteg däremellan), beroende på vilka villkor du anger.

  1. Klicka på fliken Skapa och sedan på Frågedesign i gruppen Frågor.

  2. Markera tabellen som innehåller de data du vill ta bort (om tabellen är relaterad markerar du tabellen på 1-sidan av relationen), klickar på Lägg till och sedan på Stäng.

    Tabellen visas som ett fönster i den övre delen av frågerutnätet. I fönstret visas alla fält i den markerade tabellen.

  3. Dubbelklicka på asterisken (*) för att lägga till alla fält i tabellen i designrutnätet. Om du lägger till alla tabellfält kan borttagningsfrågan ta bort hela poster (rader) från tabellen.

    Alternativt kan du ange villkor för ett eller flera fält på raden Villkor i designern och sedan avmarkera kryssrutan Visa för varje villkorsfält. Mer information om hur du använder villkor finns i Exempelvillkor för urvalsfrågor .

    Obs!: Du använder villkor för att bara returnera de poster som du vill ändra. Annars anges uppdateringsfrågan till NULL för varje post i vart och ett av fälten i frågan.

  4. Klicka på Visa i gruppen Resultat på fliken Design och sedan på Datablad.

  5. Kontrollera att frågan returnerar de poster som du vill ange till NULL eller en nollängdssträng (ett par dubbla citattecken utan blanksteg mellan dem ("").

  6. Upprepa steg 3 till 5 och ändra fälten eller villkoren tills frågan bara returnerar de data som du vill ta bort och tryck sedan på CTRL+S för att spara frågan.

  7. Om du vill köra frågan dubbelklickar du på frågan i navigeringsfönstret.

Överst på sidan

Ytterligare information

Ta bort data från relaterade tabeller

Om du vill ta bort data från flera relaterade tabeller måste du aktivera alternativen Referensintegritet och Ta bort poster i relaterade tabeller för varje relation. På så sätt kan frågan ta bort data från tabellerna på 1- och N-sidan av relationen. När du förbereder dig för att ta bort relaterade data krävs verifiering av följande:

  • Bestäm vilka poster som finns på 1-sidan av relationen och vilka som finns på N-sidan.

  • Om du behöver ta bort poster på 1-sidan av relationen och relaterade poster på N-sidan aktiverar du en uppsättning regler som kallas Referensintegritet, och du aktiverar sammanhängande borttagning. I stegen i det här avsnittet förklaras Referensintegritet och hur du utför båda uppgifterna.

  • Om du bara behöver ta bort poster på 1-sidan av relationen måste du först ta bort relationen och sedan ta bort data.

Om du bara behöver ta bort data på N-sidan av relationen kan du skapa och köra borttagningsfrågan utan att behöva ändra relationen.

Om du vill ta reda på vilka poster som finns på 1- och N-sidan av en relation klickar du på Relationer i gruppen Relationer på fliken Databasverktyg. På fliken Relationer visas tabellerna i databasen och relationerna. Varje relation visas som en linje som kopplar tabeller mellan fält.

I följande bild visas en typisk relation. De flesta, om inte alla, av relationerna i en databas har en 1-sida och en "många"-sida. Relationsdiagrammet betecknar "1"-sidan med siffran ett (1) och "många"-sidan med oändlighetssymbolen ().

En relation mellan två tabeller

När du tar bort poster på 1-sidan av relationen tar du också bort alla relaterade poster på N-sidan av relationen. Men när du tar bort poster på N-sidan av en relation tar du vanligtvis inte bort poster på 1-sidan.

Access tillämpar också automatiskt en uppsättning regler som kallas referensintegritet. Dessa regler säkerställer att sekundärnycklarna i en databas innehåller rätt värden. En sekundärnyckel är en kolumn vars värden matchar värdena i primärnyckelkolumnen i en annan tabell.

Redigera relationen

Följ de här stegen endast när du behöver ta bort data på 1- och N-sidan av en relation.

  1. På fliken Databasverktyg, i gruppen Relationer, klickar du på Relationer.

  2. Högerklicka på relationen (linjen) som kopplar samman tabellerna som ingår i borttagningen och klicka sedan på Redigera relation på snabbmenyn.

  3. Kontrollera att kryssrutan Referensintegritet är markerad i dialogrutan Redigera relationer.

  4. Markera kryssrutan Ta bort poster i relaterade tabeller.

    Obs!: Tills du inaktiverar den här egenskapen igen tas alla relaterade poster på N-sidan av relationen bort om du tar bort en post på 1-sidan av relationen.

  5. Klicka på OK, stäng fönstret Relationer och gå sedan vidare till nästa uppsättning steg.

Ta bort en relation

  1. Om du inte redan har gjort det öppnar du fönstret Relationer .

  2. På fliken Databasverktyg, i gruppen Relationer, klickar du på Relationer.

    Notera fälten som ingår i relationen så att du kan återställa relationen efter att du har tagit bort dina data.

  3. Högerklicka på relationen (linjen) som kopplar samman tabellerna som ingår i borttagningen och klicka sedan på Ta bort på snabbmenyn.

Obs!: Om du vill återställa relationen följer du stegen ovan för att öppna fönstret Relationer och drar sedan primärnyckelfältet från 1-tabellen och släpper det i sekundärnyckelfältet i N-tabellen. Dialogrutan Redigera relation visas. Om den gamla relationen har referensintegritet väljer du Referensintegritet och klickar sedan på Skapa. Annars klickar du bara på Skapa.

Överst på sidan

Exempelvillkor för urvalsfrågor

I följande tabell visas några exempelvillkor som du kan använda i urvalsfrågor när du vill se till att du bara tar bort de data som du vill ta bort. I vissa av de här exemplen används jokertecken.

Villkor

Effekt

> 234

Returnerar alla tal som är större än 234. Om du vill hitta alla tal som är mindre än 234 använder du < 234.

>= "Cajhen"

Returnerar alla poster från Cajhen till och med slutet på alfabetet.

Mellan #2010-02-02# Och #2010-12-01#

Returnerar datum mellan 2 februari 2010 och 1 december 2010 (ANSI-89). Om databasen använder jokertecken från ANSI-92 ska du använda enkla citattecken (') i stället för nummertecken (#). Exempel: Mellan 2010-02-02 och 2010-12-01.

Not "Tyskland"

Hittar alla poster där det exakta innehållet i fältet inte är exakt detsamma som "Tyskland". Villkoret returnerar poster som innehåller tecken förutom "Tyskland", till exempel "Tyskland (euro)" eller "Europa (Tyskland)".

Not "T*"

Hittar alla poster som inte börjar med bokstaven T. Om databasen använder teckenuppsättningen ANSI-92 för jokertecken, ska du använda procenttecken (%) i stället för asterisk (*).

Not "*t"

Hittar alla poster som inte slutar med bokstaven t. Om databasen använder teckenuppsättningen ANSI-92 för jokertecken, ska du använda procenttecken (%) i stället för asterisk (*).

In(Kanada,Storbritannien)

Hittar alla poster i en lista som innehåller Kanada eller Storbritannien.

Som "[A-D]*"

I ett textfält hittar du alla poster som börjar med bokstäverna A till och med D. Om databasen använder teckenuppsättningen ANSI-92 för jokertecken ska du använda procenttecken (%) i stället för asterisken (*).

Som "*ar*"

Hittar alla poster som innehåller teckensekvensen "ar". Om databasen använder teckenuppsättningen ANSI-92 för jokertecken, ska du använda procenttecken (%) i stället för asterisk (*).

Som "Hotel Star???"

Hittar alla poster som börjar med "Hotel" och innehåller en andra sträng på fem bokstäver där de första fyra bokstäverna är "Star" och den sista bokstaven är okänd. Om databasen använder teckenuppsättningen ANSI-92 för jokertecken, ska du använda understreck (_) i stället för frågetecken (?).

#2/2/2010#

Hittar alla poster för den 2 februari 2010. Om databasen använder teckenuppsättningen ANSI-92 för jokertecken ska du omsluta datumet med enkla citattecken i stället för nummertecken ('2010-02-02').

< Datum( ) - 30

Använder funktionen Datum för att returnera alla datum som är äldre än 30 dagar.

Datum()

Använder funktionen Datum för att returnera alla poster som innehåller dagens datum.

Mellan Datum( ) Och DatumLäggTill("M", 3, Datum( ))

Använder funktionerna Datum och DatumLäggTill för att returnera alla poster mellan dagens datum och tre månader från dagens datum.

Är Null

Returnerar alla poster som innehåller ett null-värde (tomma eller odefinierade).

Är Icke Null

Returnerar alla poster som innehåller ett värde (som inte är null).

""

Returnerar alla poster som innehåller en sträng med nollängd. Du använder nollängdssträngar när du behöver lägga till ett värde i ett obligatoriskt fält, men du vet ännu inte vad det faktiska värdet är. Ett fält kanske ska innehålla ett faxnummer, men vissa av kunderna kanske inte har faxar. I så fall kan du i stället för att ange ett tal ange ett par dubbla citattecken utan blanksteg mellan dem (""").

Överst på sidan

Felsökningstips

Varför visas det här felmeddelandet och hur korrigerar jag felet?

Om du skapar en borttagningsfråga med hjälp av flera tabeller och frågans Unika poster-egenskap är inställd på Nej, visas felmeddelandet i Access. Det gick inte att ta bort från de angivna tabellerna när du kör frågan.

Du korrigerar det här problemet genom att ange frågans Unika poster-egenskap till Ja.

  1. Öppna borttagningsfrågan i designvyn.

  2. Om frågans egenskapslista inte är öppen öppnar du den genom att trycka på F4.

  3. Klicka på frågedesignern så att frågeegenskaperna visas (och inte fältegenskaperna).

  4. Leta reda på egenskapen Unika poster i frågans egenskapslista och ange den till Ja.

Ange att en fråga inte ska spärras i inaktivt läge

Om du öppnar en skrivbordsdatabas som du inte har valt att lita på eller som inte finns på en betrodd plats blockeras alla redigeringsfrågor som standard.

Om du försöker att köra en redigeringsfråga men inget verka hända, kontrollerar du om följande meddelande visas i statusfältet:

Den här åtgärden eller händelsen spärras i inaktivt läge.

När du ser meddelandet ska du utföra följande steg för att aktivera blockerat innehåll:

  • Klicka på Aktivera innehåll i meddelandefältet för säkerhetsvarning och kör frågan igen.

Överst på sidan

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.