Office
Logga in

Arkivera information i Access

Obs!:  Vi vill kunna erbjuda dig bästa möjliga supportinnehåll så fort som möjligt och på ditt språk. Den här sidan har översatts med hjälp av automatiserad översättning och kan innehålla grammatiska fel eller andra felaktigheter. Vår avsikt är att den här informationen ska vara användbar för dig. Vill du berätta för oss om informationen är till hjälp längst ned på sidan? Här är artikeln på engelska som referens.

Du kan ordna din information genom att regelbundet arkivera gamla eller inaktiva poster. Exempel: Anta att du använder Access för att hantera ett utlåningsbibliotek. Du kan ha en tabell för att spåra lånetransaktioner, med ett fält för det datum då objektet lånades ut och ett fält för det datum då objektet lämnades tillbaka. Din dataförvaringsprincip kan till exempel vara att arkivera lånetransaktioner ett år efter att objektet lämnas tillbaka, och att förstöra posterna efter två år.

Du kan välja att arkivera alla tabeller i en databas, angivna tabeller eller endast angivna poster – till exempel poster som är äldre än ett angivet datum. I det här avsnittet beskrivs hur du arkiverar information.

I den här artikeln

Översikt

Regelbundet flytta poster till ett arkivtabell

Ersätta en tabell med jämna mellanrum

Du bör regelbundet ersätta alla tabeller

Översikt

Att arkivera information kan vara användbart om du har information som du inte behöver använda längre, men som du ändå vill behålla för säkerhets skull. Du kan skapa en princip som styr arkiveringen, till exempel en dataförvaringsprincip.

Arkivering används ofta för att spara information utifrån ett datumvillkor, till exempel i slutet av varje månad.

Olika sätt att arkivera information

I tabellen nedan visas olika metoder för arkivering, information om när du kan använda metoderna och annan viktig information.

Metod

Beskrivning

Används om...

Annan viktig information

Regelbundet flytta poster till ett arkivtabell

Med regelbundna mellanrum körs en fråga som markerar den information som ska arkiveras. Informationen läggs sedan till i en arkiveringstabell. Därefter körs en fråga som markerar samma information i den ursprungliga tabellen och tar bort den.

En del av posterna i en tabell uppfyller det villkor som du använder för att ange vilken information som ska arkiveras.

EXEMPEL: Du vill arkivera bibliotekstransaktioner (utlåningar) om återlämningsdatumet ligger minst ett år tillbaka i tiden.

  • Du kan behöva lösa eventuella problem med referensintegritet, särskilt om de poster som du vill arkivera är en del av "ett" i ett en-till-många-relation.

  • Om du behöver använda parametrar i frågor bör du skapa ett formulär för att hantera parametrar. I annat fall kan riskera du dataförlust.

Ersätta en tabell med jämna mellanrum

Med regelbundna mellanrum skapas en arkiverad kopia av en angiven tabell, och därefter ersätts tabellen med en ny, tom version av tabellen.

Alla poster i en tabell uppfyller det villkor som du använder för att ange vilken information som ska arkiveras.

EXEMPEL: Du har en tabell där de högsta och lägsta temperaturerna för varje dag lagras. Varje år arkiverar du tabellen och börjar om med en tom tabell.

  • Du kan behöva lösa eventuella problem med referensintegritet.

Du bör regelbundet ersätta alla tabeller

Från början har du en delad databas (en databas som består av dels en serverdatabasfil som innehåller alla tabeller, dels en klientdatabasfil som innehåller alla övriga databasobjekt). Med regelbundna mellanrum skapas en arkiverad kopia av serverdatabasen, och därefter ersätts serverdatabasen med en ny, tom version.

Alla poster i de flesta av tabellerna i databasen uppfyller det villkor som du använder för att ange vilken information som ska arkiveras.

EXEMPEL: Databasen består av flera tabeller med olika typer av meteorologisk information. Varje år arkiverar du samtliga tabeller.

  • Om du använder uppslagstabeller (tabeller som används för att lagra värden för uppslag, till exempel postnummer eller avdelningar) kan du behöva importera informationen från dessa tabeller till den nya serverdatabasen.

  • Det går inte att använda ett makro för den här metoden. Du måste arkivera databasen manuellt.

Lösa problem med referensintegritet

Om de poster som du vill arkivera är relaterade till poster i andra tabeller kan du behöva skapa en lösning så att det här sambandet inte påverkas. Om posterna som du vill arkivera är underordnade poster (om de är en del av "många" i ett en-till-många-relation) kan du förmodligen arkivera posterna utan att behöva göra något mer. Om posterna som du vill arkivera är överordnade poster (om de är en del av "ett" i ett en-till-många-relation) kan följande hända när du arkiverar de överordnade posterna:

  • De överordnade posterna kanske inte kan tas bort. Detta kan orsaka problem om du redan har lagt till de överordnade posterna i arkiveringstabellen.

    - eller -

  • De underordnade posterna kan bli överblivna – underordnade poster som saknar en överordnad post. Detta kan orsaka problem med dataintegritet och andra funktioner i databasen där de överblivna posterna används.

Gör så här för att åtgärda problem med referensintegritet:

  1. Kontrollera vilka underordnade poster som hör till de poster som du vill arkivera. Om du till exempel vill arkivera poster för tillgångar som du lånar ut från ett bibliotek ska du först kontrollera om det finns öppna transaktioner för tillgångarna, det vill säga om tillgångarna har lånats ut men inte lämnats tillbaka.

  2. Gör något av följande:

    • Om ”underordnade”-poster kan alltid tas bort, se till att används relationen referensintegritet med sammanhängande borttagningar. Detta säkerställer att alla relaterade ”underordnade” poster ska tas bort.

    • Om ”underordnade” poster inte kan alltid raderas på ett säkert sätt, bör du Arkivera alla tabeller i databasen.

    • Skapa en fråga som väljer ”överordnade” poster som inte har ”underordnade” poster. Använd den första frågan för att skapa Arkivera frågor (se avsnittet regelbundet flytta poster till en arkivtabell), i stället för ”överordnade”-tabellen.

      Tips: Du kan använda Frågeguiden för att söka omatchade poster. Mer information finns i artikeln jämföra två tabeller och söka efter omatchade poster.

Överst på sidan

Flytta poster regelbundet till en arkiveringstabell

Skapa en tom kopia av den tabell som innehåller de poster som du vill arkivera. Den nya tomma tabellen är arkiveringstabellen. Skapa sedan en lägg till fråga för att kopiera poster från den ursprungliga tabellen till arkiveringstabellen. Därefter skapar du en ta bort fråga för att ta bort de arkiverade posterna från den ursprungliga tabellen. Slutligen skapar du ett makro för att köra båda frågorna. Kör makrot varje gång du vill arkivera poster.

Tips: Du kan koppla ett makro till en knapp i ett formulär så att makrot körs varje gång någon klickar på knappen.

Steg 1: Skapa en arkivtabell

Steg 2: Skapa en fråga som kopierar data till tabellen Arkiv

Steg 3: Skapa en borttagningsfråga som tar bort samma data från den ursprungliga tabellen

Steg 4: Skapa ett makro som körs båda frågor

Steg 1: Skapa en arkiveringstabell

Om du vill behålla alla arkiverade poster i en enda tabell behöver du bara utföra det här steget en gång. Den arkiveringstabell som du skapar i det här steget kommer att innehålla samtliga arkiverade poster.

Om du vill förstör arkivera gamla tabellen när du skapar en ny behöver du inte göra det här steget. Du kan använda tabellfråga i stället för en tilläggsfråga för att kopiera data till tabellen Arkiv. Om du vill göra detta kan du gå vidare till steg 2.

Om du vill att en ny arkiveringstabell ska användas varje gång du arkiverar, och du vill behålla de gamla arkiveringstabellerna, byter du namn på den gamla arkiveringstabellen innan du skapar en ny. Om du arkiverar utifrån ett datumvillkor kan det vara en bra idé att ge gamla arkiveringstabeller namn efter det datum som de motsvarar.

Obs!: Om du vill skapa en ny arkiveringstabell vid varje arkivering och behålla den gamla tabellen måste du byta namn på den gamla tabellen innan du kör frågorna.

  1. I navigeringsfönstret markerar du den tabell som innehåller poster som du vill arkivera. Tryck på CTRL+C och sedan på CTRL+V.

  2. Välj Endast struktur under Inklistringsalternativ i dialogrutan Klistra in tabell som.

  3. Ta bort ord Kopia av och lägga till ett understreck och word ”Arkiv” i befintligt tabellnamn i rutan Tabellnamn. Om den ursprungliga tabellen heter transaktioner är tabellen Arkiv heter Transactions_archive.

    Klistra in tabell som

Steg 2: Skapa en fråga som kopierar information till arkiveringstabellen

  1. Klicka på Frågedesign i gruppen Rapporter på fliken Skapa.

  2. I dialogrutan Visa tabell kan du lägga till den tabell som innehåller de poster som du vill arkivera. Stäng dialogrutan Visa tabell.

  3. I frågedesignfönstret dubbelklickar du på asterisken (*) i den tabell som du just har lagt till. Tabellnamnet visas med en asterisk i den första kolumnen i frågerutnätet.

    Obs!: Asterisken visar att frågan ska inkludera samtliga fält från tabellen i frågeutdata. Om du använder asterisken och fält läggs till i eller tas bort från tabellen ändras frågeutdata i enlighet med förändringen.

  4. I frågedesignfönstret dubbelklickar du på det fält som du vill använda för att ange ett villkor som poster ska uppfylla för att arkiveras. Exempel: Om du har en tabell med namnet Transaktioner som innehåller fältet Återlämningsdatum, och vill arkivera alla poster där detta datum ligger minst ett år tillbaka i tiden, så dubbelklickar du på Återlämningsdatum. Fältet visas i nästa tomma kolumn i frågerutnätet.

    Frågerutnät

    Upprepa det här steget om du vill använda kriterierna för ytterligare fält.

  5. Använd villkorsraden för att ange villkor för de fält som du just lagt till. Du kan till exempel ange att markerad i datum måste vara tidigare än 1 januari 2008 med hjälp av uttrycket < #1/1/2008 # i raden villkor.

    Om din villkorsvärdena ändras varje gång du arkivera, bör du kontrollera din fråga fråga efter indata. Genom att använda en parameter i raden villkor så att frågan frågar efter inmatning. Använda ett uttryck om du vill använda en parameter som du vanligtvis skulle, men i stället för ett visst värde använder du en kort fråga inom hakparenteser. Du kan till exempel använda uttrycket < [Arkivera slutförda innan transaktioner:], så:

    Parameteruttryck

    Mer information om hur du använder parametrar finns i artikeln frågor och rapporter.

    Du kanske också vill använda raden eller ange alternativa villkor. Mer information om hur du använder villkor finns i artikeln exempel på frågevillkor.

    Tips: Om du använder ett datumfält för att ange villkor och du vill arkivera alla poster som är äldre än dagens datum, ange < datum() i raden villkor i datumfältet.

  6. Gör något av följande:

    • Om du redan har skapat en arkiveringstabell måste du skapa en tilläggsfråga för att lägga till de angivna posterna i tabellen.

      1. Klicka på Lägg till i gruppen Frågetyp på fliken Design.

      2. Markera namnet på arkiveringstabellen i rutan Tabellnamn i dialogrutan Tilläggsfråga och klicka på OK.

        Tillägg till

        Raden Tillägg till visas i frågerutnätet.

      3. Avmarkera raden Tillägg till för de fält som du har använt för att ange villkor. (Endast fältet som är markerat med en asterisk ska innehålla ett värde för Tillägg till.)

        Raden Tillägg till i frågerutnätet

    • Om du inte har skapat arkiveringstabellen måste du skapa en tabellfråga för att skapa arkiveringstabellen med de angivna posterna.

      1. Klicka på Skapa tabell i gruppen Frågetyp på fliken Design.

      2. Skriv namnet på arkiveringstabellen i rutan Tabellnamn i dialogrutan Tabellfråga och klicka på OK.

  7. Spara frågan genom att trycka på CTRL+S.

Steg 3: Skapa en borttagningsfråga som tar bort samma information från den ursprungliga tabellen

  1. Klicka på Frågedesign i gruppen Rapporter på fliken Skapa.

  2. I dialogrutan Visa tabell kan du lägga till den tabell som innehåller de poster som du vill arkivera. Stäng dialogrutan Visa tabell.

  3. I frågedesignfönstret dubbelklickar du på asterisken (*) i den tabell som du just har lagt till. Tabellnamnet visas med en asterisk i den första kolumnen i frågerutnätet.

  4. I frågedesignfönstret dubbelklickar du på de fält som du använde för att ange ett villkor i tilläggsfrågan.

  5. Använd villkorsraden för att ange villkor för de fält som du just lagt till. Mer information om hur du använder villkor finns i artikeln exempel på frågevillkor.

    Viktigt!: Om tillägg eller tabellfrågor frågan används en parameter, så ska din borttagningsfråga. Dessutom bör du kontrollera att du anger samma värde för båda frågorna. Om du anger olika parametervärden, kan du förlora data. Du kan använda ett dataformulär för att samla in värdena och göra frågorna fråga formuläret för indatavärden för att förhindra dataförlust. Mer information finns i artikeln frågor och rapporter.

  6. Klicka på Ta bort i gruppen Frågetyp på fliken Design.

    Raden Ta bort visas i frågerutnätet.

    Raden Ta bort i frågerutnätet

  7. Spara frågan genom att trycka på CTRL+S.

Steg 4: Skapa ett makro som kör båda frågorna

  1. Klicka på Makro i gruppen Annat på fliken Skapa. Om kommandot inte finns tillgängligt kan du klicka på pilen under knappen Modul eller Klassmodul och sedan klicka på Makro.

  2. I kolumnen Instruktion på den första raden i makrorutnätet väljer du ÖppnaFråga.

    Makroåtgärden Öppna fråga

  3. I rutan Frågenamn under Instruktionsargument längst ned i rutnätet markerar du den tilläggs- eller tabellfråga som du skapade i steg 2 i den nedrullningsbara listan.

    Makroåtgärden Öppna fråga: frågeargument

  4. Välj ÖppnaFråga i kolumnen Instruktion på den andra raden i makrorutnätet.

  5. I rutan Frågenamn under Instruktionsargument längst ned i rutnätet markerar du borttagningsfrågan i den nedrullningsbara listan.

    Makrot ska nu se ut ungefär så här:

    Makro som kan sparas

  6. Spara makrot genom att trycka på CTRL+S.

    Kör makrot varje gång du vill arkivera poster.

Överst på sidan

Ersätta en tabell regelbundet

Om du alltid vill arkivera alla data i en tabell behöver du inte använda frågor eller makron. I stället kan du regelbundet ersätta tabellen med en tom kopia.

Viktigt!: Om tabellen som du arkivera är relaterad till andra tabeller, kan du behöva kringgå referensintegritet.

  1. I navigeringsfönstret markerar du den tabell som du vill arkivera. Tryck på CTRL+C och sedan på CTRL+V.

  2. Välj Endast struktur under Inklistringsalternativ i dialogrutan Klistra in tabell som och klicka sedan på OK.

    Access kalkylbladsnamn kopia kopia av ursprungliga tabellnamn.

  3. Högerklicka på den ursprungliga tabellen i navigeringsfönstret och klicka på Byt namn på den snabbmeny som visas.

    Ange ett namn för tabellen som visar vad den innehåller, till exempel "HögstaLägstaDagstemperaturer_arkiv_2007".

  4. Högerklicka på den tomma kopian i navigeringsfönstret och klicka på Byt namn på den snabbmeny som visas.

    Ange det ursprungliga tabellnamnet för den tomma kopian.

Överst på sidan

Ersätta alla tabeller regelbundet

Om du använder en delad databas kan du välja att regelbundet ersätta alla tabeller genom att ersätta serverdatabasen med en tom kopia.

Börja med att skapa den tomma kopian. Förutsatt att du inte ändrar databasdesignen kan du använda den här kopian på nytt varje gång du arkiverar. Varje gång du vill arkivera byter du namn på den befintliga serverdatabasen för att ange att den är en arkivdatabas, och därefter sparar du den tomma kopian som en ny serverdatabas.

Skapa en tom kopia av en serverdatabas

Importera tabelldefinitionerna för alla tabeller i serverdatabasen.

  1. Skapa en ny, tom databas. Ta bort Tabell1.

  2. Gå till fliken Externa data och gruppen Importera. Klicka på Access.

  3. I dialogrutan Hämta externa data väljer du Importera tabeller, frågor, formulär, rapporter, makron och moduler till den aktuella databasen och klickar på Bläddra.

  4. Markera serverdatabasen i dialogrutan Öppna. Klicka på Öppna för att stänga dialogrutan Öppna och klicka på OK.

  5. Klicka på Alternativ i dialogrutan Importera objekt.

  6. Välj Endast definition under Importera tabeller.

  7. Klicka på Markera alla på fliken Tabeller, klicka på OK och klicka sedan på Stäng.

Fortsätt med att lägga till data i alla eventuella uppslagstabeller i den tomma kopian. Gör följande för varje uppslagstabell:

  1. Skapa en länk till uppslagstabellen i den befintliga serverdatabasen.

  2. Skapa en tilläggsfråga som lägger till alla poster från ursprungsdatabasen till kopian.

Ersätta serverdatabasen med en tom kopia

Byt först namn på den befintliga serverdatabasen för att ange att den är en arkivdatabas.

Öppna sedan den tomma kopian och spara den med namnet på den ursprungliga databasen.

  1. Klicka på Microsoft Office-knappen Bild av Office-knappen och peka sedan på Spara som. Spara som-menyn öppnas.

  2. Klicka på Access 2007-databas under Spara databasen i ett annat format.

Överst på sidan

Utöka dina Office-kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×