Komprimera och reparera en databas

Gäller för
Access för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Databasfiler kan växa snabbt när du använder dem, vilket ibland kan inverka negativt på prestanda. De kan också ibland bli korrupta eller skadade. Du kan förhindra eller lösa de här problemen med kommandot Komprimera och reparera databas . Komprimeringsprocessen komprimerar inte data – den gör att databasfilen blir mindre genom att oanvänt utrymme tas bort. Kommandot Komprimera och reparera databas kan också förbättra databasens prestanda.

Tips:Om du delar upp en databas kan det förhindra att databasfilerna skadas och begränsa dataförlusterna genom att lagra data i en separat fil som användarna inte arbetar direkt i.

Vad vill du göra?

Olika sätt att komprimera och reparera en databas
Innan du börjar
Komprimera och reparera en databas när den stängs
Komprimera och reparera en databas som är öppen
Komprimera och reparera en databas som inte är öppen
Komprimera och reparera en skadad databas när Access uppmanar dig att göra det

Varför du bör komprimera och reparera en databas
Databasfiler växer med användning
Databasfiler kan bli skadade

Olika sätt att komprimera och reparera en databas

Det finns flera metoder för att komprimera och reparera en databas. En vanlig metod är att automatiskt komprimera och reparera en databas när den stängs. Dessutom kan du köra kommandot Komprimera och reparera databas manuellt när du har en databas öppen och på en databas som inte är öppen.

Innan du börjar

Vidta följande åtgärder innan du börjar en komprimerings- och reparationsåtgärd:

  • Skapa en säkerhetskopia av databasen Under reparationsprocessen kan det hända att Access trunkerar data från tabeller som är skadade. Ibland kan dessa data återställas från en säkerhetskopia. Utöver din vanliga säkerhetskopieringsstrategi bör du göra en säkerhetskopia direkt innan du använder kommandot Komprimera och reparera databas . Mer information finns i Skydda data med säkerhetskopierings- och återställningsprocesser.
  • Få exklusiv åtkomst till databasen En komprimerings- och reparationsåtgärd kräver exklusiv åtkomst till databasfilen eftersom åtgärden kan störa andra användare. Du bör meddela andra användare inför en planerad komprimerings- och reparationsåtgärd, så att de kan undvika att använda databasen under tiden. Mer information finns i Öppna en befintlig Access-databas.
    Informera användarna om hur länge de måste undvika att använda databasen. Om du kör komprimerings- och reparationsåtgärder regelbundet, så bör du anteckna hur lång tid det tar. Då kan du sedan göra mer precisa uppskattningar och ge andra användare råd om hur länge bör låta bli att använda databasen.
  • Skaffa tillräcklig filbehörighet till databasen Kontakta systemadministratören om hjälp om du saknar behörighet. Mer information finns i Ändringar av fildelning via ett nätverk i Windows.

Överst på sidan

Komprimera och reparera en databas automatiskt när den stängs

Du kan välja databasalternativet Komprimera vid stängning om du vill komprimera och reparera en databas automatiskt när den stängs. Det här alternativet påverkar enbart den databas som är öppen. Ange det här alternativet separat för varje databas som du vill komprimera och reparera automatiskt. I databaser med flera användare kan det hända att du inte vill ställa in det här alternativet eftersom det kan inverka på databasens tillgänglighet.

  1. Välj Filalternativ>.
  2. Välj Aktuell databas i dialogrutan Access-alternativ.
  3. Markera kryssrutan Komprimera vid stängning under Programalternativ.
  4. Välj OK.
  5. Stäng och öppna databasen igen så att alternativet aktiveras.

Överst på sidan

Komprimera och reparera en databas som är öppen manuellt

  • Välj Filinformation>>, komprimera & reparera databas.
    Access skapar en kopia av den komprimerade och reparerade databasen på samma plats.

Överst på sidan

Komprimera och reparera manuellt en databas som inte är öppen

Använd den här proceduren när du inte kan öppna en Access-databas direkt.

  1. Se till att inga andra användare använder databasfilen.
  2. Starta Access.
  3. Dubbelklicka på Tom databas på mallsidan.
  4. Välj Stäng fil>.
  5. Välj Databasverktyg>, Komprimera och reparera databas.
  6. I dialogrutan Databas att komprimera från bläddrar du till och dubbelklickar på den databas som du vill komprimera och reparera.

Access skapar en kopia av den komprimerade och reparerade databasen på samma plats.

Överst på sidan

Komprimera och reparera en skadad databas när Access uppmanar dig att göra det

Om du försöker öppna en databasfil som är skadad och du uppmanas av Access att komprimera och reparera databasen väljer du Ja. Två saker kan hända:

  • Om Access fullständigt reparerar en skadad fil, så visas ett meddelande om att reparationen har slutförts och att du bör kontrollera innehållet i databasen för att säkerställa att allt är som det ska vara.
  • Om Access bara lyckas delvis hålla reda på databasobjekt som det inte gick att reparera i en systemtabell med namnet MSysCompactErrors. Access öppnar tabellen MSysCompactErrors i databladsvyn. Om du har gjort en säkerhetskopia innan databasen skadades kan du använda tabellen MSysCompactErrors för att avgöra vilka objekt som ska importeras till den reparerade databasen. Du visar systemtabeller genom att högerklicka på namnlisten för navigering och sedan välja Visa systemobjekt i dialogrutan Navigeringsalternativ.

Överst på sidan

Varför du bör komprimera och reparera en databas

I den här översikten beskrivs hur man kan använda kommandot Komprimera och reparera databas för att förhindra och åtgärda följande problem som ibland kan drabba databaser: filer som blir större med användning och skadade filer.

Databasfiler växer med användning

Allteftersom du lägger till och uppdaterar data i en databas och ändrar dess design, så blir databasfilen större. En del av den här tillväxten kommer från nya data, men en del kommer från andra källor:

  • Access skapar tillfälliga, dolda objekt för att utföra olika uppgifter. Ibland kan dessa tillfälliga objekt finnas kvar i databasen när Access inte längre behöver dem.
  • När du tar bort ett databasobjekt frigörs inte automatiskt det diskutrymme som upptas av objektet – databasfilen använder fortfarande det diskutrymmet, även om objektet tas bort.

När databasfilen fylls upp med resterna av tillfälliga och borttagna objekt, så kan dess prestanda försämras. Objekt kan ta längre tid att öppna, frågor kan ta längre tid än vanligt att köra och vanliga åtgärder verkar rent allmänt ta längre tid.

Överst på sidan

Databasfiler kan bli skadade

I vissa fall kan databasfiler bli skadade. Om en databasfil delas i ett nätverk och flera användare arbeta direkt med filen samtidigt, så finns det en liten risk att filen skadas. Risken för skada blir något högre om användarna ofta redigerar data i fält med lång text, och risken växer med tiden. Du kan minimera den här risken genom att använda kommandot Komprimera och reparera databas.

Ofta resulterar den här typen av fel från ett problem med en Visual Basic for Applications-modul (VBA) och utgör ingen risk för dataförlust. Den här typen av skador utgör emellertid en risk för skador i databasdesignen, t.ex. genom att VBA-kod går förlorad eller formulär inte kan användas.

Skadade databasfiler kan i undantagsfall resultera i dataförluster. Vanligtvis är denna förlust begränsad till en användares senaste åtgärd; d.v.s. en enda ändring av data. När en användare börjar ändra data och ändringen avbryts – till exempel för att nätverkstjänsten går ner – markeras databasfilen som skadad. Filen kan repareras, men vissa data kan saknas när reparationen är klar.

Se även

Skydda data med säkerhetskopierings- och återställningsprocesser

Ange allmänna användaralternativ i Access