Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Du kan holde Microsoft Access-databasene organisert og håndterbare ved å arkivere gamle eller inaktive poster regelmessig. Du kan arkivere alle tabellene i en database, bestemte tabeller eller bare bestemte poster, for eksempel poster som er eldre enn en bestemt dato. Dette emnet forklarer hvordan du bruker tre forskjellige alternativer til å arkivere dataene i Access-databasen.

I denne artikkelen

Når bør du vurdere arkivering?

Når en database på datamaskinen inneholder data som du ikke har tenkt å bruke lenger, men du vil ha dataene nyttige i tilfelle du trenger dem på et tidspunkt, eller for å oppfylle en policy for dataoppbevaring, er arkivering en god måte å beholde slike data på. Arkivering brukes også ofte til å beholde data basert på en datobetingelse, for eksempel på slutten av en måned.

Måter å arkivere data på

Tabellen nedenfor viser metoder for å arkivere data, en beskrivelse av metoden, forklaring av når du bør bruke hver metode og andre bestemte hensyn for metoden.

Metode

Beskrivelse

Bruk når...

Andre faktorer

Erstatte en tabell med jevne mellomrom

Lager regelmessig en arkivkopi av en bestemt tabell og erstatter tabellen med en ny, tom tabellkopi.

Alle postene i en tabell oppfyller betingelsene du bruker til å bestemme om du vil arkivere.EKSEMPEL: Du har en tabell som lagrer ekstreme daglige temperaturer. Hvert år arkiverer du tabellen og starter på nytt med en tom.

Erstatt regelmessig alle tabeller

Lag regelmessig en arkivkopi av bakdatabasen, og erstatt deretter bakdatabasen med en ny, tom. Krever en delt database (en database som består av: en bakdatabasefil som inneholder alle tabellene, og en frontdatabasefil som inneholder alle de andre databaseobjektene).

Alle postene i de fleste tabellene i en database oppfyller betingelsen du bruker til å bestemme om du vil arkivere.EKSEMPEL: Databasen består av flere tabeller med ulike typer meteorologiske data. Hvert år arkiverer du alle tabellene.

  • Hvis du har noen oppslagstabeller (tabeller som du bruker til å lagre verdier for oppslag, for eksempel postnumre eller avdelinger), må du kanskje importere disse dataene til den nye bakdatabasen.

  • Du må arkivere databasen manuelt. Du kan ikke bruke en makro for denne metoden.

Flytt poster regelmessig til en arkivtabell

Kjører regelmessig en spørring som velger postene for arkivering, og legger til dataene i en arkivtabell, og deretter kjører du en spørring for å velge de samme postene (fra den opprinnelige tabellen) og slette dem.

Noen av postene i en tabell oppfyller betingelsen du bruker til å bestemme om du vil arkivere.EKSEMPEL: Du vil arkivere bibliotektransaksjoner (utsjekkinger) hvis innsjekket dato er minst ett år gammelt.

Advarsel!: Hvis du trenger å bruke parametere i spørringene, bør du opprette et skjema for å håndtere parameterne. Ellers risikerer du tap av data.

Arbeide rundt referanseintegritet

Hvis postene du vil arkivere, er relatert til poster i andre tabeller, må du kanskje omgå relasjonen. Hvis postene du vil arkivere, er underordnede poster (de tilhører «mange»-siden av en én-til-mange-relasjon ), kan du sannsynligvis trygt arkivere dem uten bekymring. Hvis oppføringene du vil arkivere, er overordnede poster (de tilhører «én»-siden av en én-til-mange-relasjon ), kan det hende at når du arkiverer de relaterte underordnede oppføringene:

  • Hindre deg i å slette «overordnede» poster. Dette kan føre til problemer hvis du allerede har lagt til «overordnede» poster i arkivtabellen.

    - eller -

  • Bli "frittstående" – poster som tilhører en "overordnet" som ikke finnes. Dette kan føre til problemer med dataintegritet og funksjonalitet i databasen som bruker de frittstående postene.

Gjør følgende for å ta hensyn til referanseintegritet:

  1. Finn ut hvilke underordnede poster som tilhører oppføringene du vil arkivere. Hvis du for eksempel vil arkivere poster med aktiva som er lånt på et bibliotek, må du først avgjøre om det er noen åpne transaksjoner på disse aktivaene, det vil si om aktivaene er sjekket ut, men ikke returnert.

  2. Gjør ett av følgende:

    • Hvis «underordnede» poster alltid kan slettes på en trygg måte, må du kontrollere at relasjonen fremtvinger referanseintegritet, med gjennomgripende slettinger. Dette sikrer at alle relaterte underordnede poster slettes.

    • Hvis underordnede poster ikke alltid kan slettes trygt, bør du vurdere å arkivere alle tabellene i databasen.

    • Opprett en spørring som velger «overordnede» poster som ikke har «underordnede» poster. Deretter bruker du den første spørringen til å opprette arkivspørringer (se inndelingen Flytt poster regelmessig til en arkivtabell), i stedet for å bruke den overordnede tabellen.

Til toppen av siden

Erstatte en tabell med jevne mellomrom

Hvis du vil arkivere alle dataene i en tabell, kan du med jevne mellomrom erstatte tabellen med en tom kopi.

Viktig!: Hvis tabellen du arkiverer er relatert til andre tabeller, må du kanskje omgå referanseintegritet.

  1. Velg tabellene du vil arkivere, i navigasjonsruten, trykk CTRL+C, og trykk deretter CTRL+V.

  2. Velg Bare struktur under Alternativer for innliming i dialogboksen Lim inn tabell som, og klikk deretter OK.Access gir kopien et navn som en kopi av den opprinnelige tabellen.

  3. Høyreklikk den opprinnelige tabellen i navigasjonsruten, og klikk deretter Gi nytt navn på hurtigmenyen.Gi tabellen et annet navn for å angi hva den inneholder, for eksempel «DailyTemperatureExtremes_archive_2019».

  4. Høyreklikk den tomme kopien i navigasjonsruten, og klikk deretter Gi nytt navn på hurtigmenyen. Gi den nytt navn til den opprinnelige tabellen.

Til toppen av siden

Erstatt regelmessig alle tabeller

Hvis du bruker en delt database, kan du med jevne mellomrom erstatte alle tabeller ved å erstatte bakdatabasen med en tom kopi.

Hvis du vil gjøre dette, må du først klargjøre den tomme kopien. Med mindre utformingen av databasen endres, kan du bruke denne tomme kopien på nytt hver gang du arkiverer. Hvis du vil arkivere bare gi nytt navn til den eksisterende bakdatabasen for å angi at den er et arkiv, og lagre den tomme kopien som den nye bakdatabasen.

Klargjøre en tom kopi av en bakdatabase

Først importerer du tabelldefinisjonene for alle tabellene i bakdatabasen.

  1. Velg Tom databaseFanen Fil, og klikk deretter Opprett.

  2. Lukk tabell1.

  3. Klikk Access i gruppen Importer & kobling på fanen Eksterne data.

  4. Velg Importer tabeller, spørringer, skjemaer, rapporter, makroer og moduler i gjeldende database i dialogboksen Hent eksterne data – Access-database, og klikk deretter Bla gjennom.

  5. Velg bakdatabasen i dialogboksen Åpne fil. Klikk Åpne for å lukke dialogboksen Åpne fil , og klikk deretter OK.

  6. Klikk Alternativer i dialogboksen Importer objekter.

  7. Velg Bare definisjon under Importer tabeller.

  8. Klikk Merk altTabeller-fanen, klikk OK, og klikk deretter Lukk.

Legge til data i alle oppslagstabeller i den tomme kopien 

Gjør følgende for hver oppslagstabell:

  1. Koble til oppslagstabellen i den eksisterende bakdatabasen.

  2. Opprett en tilføyingsspørring som legger til alle postene fra originalen i kopien.

Erstatt bakdatabasen med en tom kopi

Gi først nytt navn til den eksisterende bakdatabasen for å angi at den nå er et arkiv. Deretter åpner du den tomme kopien og lagrer den ved hjelp av det opprinnelige bakdatabasenavnet.

  1. Klikk fanen Fil , og klikk deretter Lagre database som. Du kan bli bedt om å lukke alle åpne objekter. hvis det er det, klikker du OK. Dialogboksen Lagre som åpnes.

  2. Kontroller at du lagrer filen på samme sted som den opprinnelige bakdatabasen, i boksen Lagre i (øverst i dialogboksen Lagre som).

  3. Skriv inn navnet på den opprinnelige bakdatabasen i Filnavn-boksen .

  4. Velg Access-database (*.accdb)i Filtype-boksen.

Til toppen av siden

Flytt poster regelmessig til en arkivtabell

Dette er en prosess med fire trinn som krever en tom kopi av tabellen som inneholder postene du vil arkivere, opprette en tilføyingsspørring for å kopiere postene fra den opprinnelige tabellen til arkivtabellen, opprette en slettespørring for å fjerne de arkiverte postene fra den opprinnelige tabellen, og til slutt opprette en makro for å kjøre begge spørringene som kan kjøres når du vil arkivere. Denne tilsynelatende komplekse prosessen kan være enkel hvis du følger trinnene i den rekkefølgen de presenteres nedenfor:

Trinn 1: Opprett en arkivtabell

Trinn 2: Opprett en tilføyingsspørring for å kopiere data til arkivtabellen

Trinn 3: Opprett en slettespørring for å fjerne data fra den opprinnelige tabellen

Trinn 4: Opprett en makro for å kjøre både tilføyings- og slettespørringer

Trinn 1: Opprett en arkivtabell

Hvis du vil beholde alle arkiverte poster i én tabell, gjør du dette trinnet én gang. Arkivtabellen du oppretter i dette trinnet, inneholder alle de arkiverte postene.

Hvis du vil slette den gamle arkivtabellen når du oppretter en ny, kan du bruke en lag-tabell-spørring til å kopiere dataene til arkivtabellen i stedet for å gjøre dette trinnet. Hvis du vil gjøre dette, går du til trinn 2.

Hvis du vil bruke en ny arkivtabell hver gang du arkiverer, men også beholde de gamle arkivtabellene, må du gi nytt navn til den gamle arkivtabellen før du oppretter en ny. Hvis du arkiverer basert på en dato, bør du vurdere å navngi de gamle arkivtabellene i henhold til datointervallet de representerer.

  1. Velg tabellen som inneholder poster som skal arkiveres, trykk CTRL+C i navigasjonsruten, og trykk deretter CTRL+V.

  2. Slett ordene Kopier av i tabellnavn-boksen, og tilføy et understrekingstegn og ordet «arkiver» til det eksisterende tabellnavnet, og klikk deretter OK. Hvis den opprinnelige tabellen for eksempel heter Transaksjoner , får arkivtabellen navnet Transactions_archive.

    Lim inn tabell som

  3. Velg Bare struktur under Alternativer for innliming i dialogboksen Lim inn tabell som.

Trinn 2: Opprett en tilføyingsspørring for å kopiere data til arkivtabellen

  1. I fanen Opprett i gruppen Spørringer, klikker du på Spørreutforming.

  2. Legg til tabellen med postene du vil arkivere.

  3. Dobbeltklikk stjernen (*) i tabellen du nettopp la til, i utformingsvinduet for spørringen. Tabellnavnet og en stjerne vises i den første kolonnen i utformingsrutenettet for spørringen.

    Obs!: Stjernen angir at spørringen skal inkludere alle feltene fra tabellen i spørringsutdataene. Når du bruker stjernen, justeres spørringsutdataene tilsvarende hvis felt legges til eller fjernes fra tabellen.

  4. Dobbeltklikk på feltet du vil bruke til å angi en betingelse som postene skal oppfylle før du arkiverer dem, i utformingsvinduet for spørringen. Hvis transaksjonstabellen for eksempel har et felt kalt Innsjekket dato, og du vil arkivere alle postene der denne datoen er mer enn ett år gammel, dobbeltklikker du på feltet og det vises i den neste tomme kolonnen i utformingsrutenettet for spørringen.

    Spørringsutformingsrutenettet

    Gjenta dette trinnet hvis du vil bruke vilkår med flere felt.

  5. Bruk Vilkår-raden til å angi vilkår for feltene du nettopp la til. Du kan for eksempel angi at innsjekket dato må være tidligere enn 1. januar 2019 ved hjelp av uttrykket <#01.01.2019# i Vilkår-raden .

    Hvis vilkårsverdiene endres hver gang du arkiverer, bør du få spørringen til å be om inndata. Hvis du vil gjøre dette, bruker du en parameter i Vilkår-raden , slik at spørringen ber om inndata. Hvis du vil bruke en parameter, bruker du et uttrykk på vanlig måte, men i stedet for en angitt verdi, kan du bruke et kort spørsmål omgitt av hakeparenteser. Du kan for eksempel bruke uttrykket <[Arkivtransaksjoner fullført før:], slik som dette:

    Parameteruttrykk

    Hvis du vil ha mer informasjon om hvordan du bruker parametere, kan du se artikkelen Innføring i spørringer.

    Du vil kanskje også bruke raden eller til å angi alternative betingelser. Hvis du vil ha mer informasjon om bruk av vilkår, kan du se artikkelen Eksempler på spørringsvilkår.

    Tips!: Hvis du bruker et datofelt til å angi vilkår, og du vil arkivere alle poster som er eldre enn gjeldende dato, angir du <Dato() i Vilkår-raden for datofeltet.

  6. Gjør ett av følgende:

    Hvis du allerede har opprettet arkivtabellen, bruker du en tilføyingsspørring til å legge til de angitte postene i tabellen:

    1. Klikk kategorien Utforming, velg Vis/skjul-gruppen og klikk Tilføying.

    2. Velg navnet på arkivtabellen i Tabellnavn-boksen i dialogboksen Tilføy, og klikk deretter OK.

      Tilføy til

      I utformingsrutenettet for spørringen vises Tilføy til-raden .

    3. Fjern Tilføy til-raden for alle felt du brukte til å angi vilkår. (Bare stjernen skal ha en verdi for Tilføy til.)

      Tilføy til-raden i spørringsutformingsrutenettet

      Hvis du ikke har opprettet arkivtabellen, kan du bruke en lag-tabell-spørring til å opprette arkivtabellen ved hjelp av de angitte postene:

    4. Klikk Lag tabell i Spørringstype-gruppen på fanen Utforming.

    5. Skriv inn navnet på arkivtabellen i Tabellnavn-boksen i dialogboksen Lag tabell, og klikk deretter OK.

  7. Trykk CTRL+S for å lagre spørringen.

Trinn 3: Opprett en slettespørring for å fjerne data fra den opprinnelige tabellen

  1. I fanen Opprett i gruppen Spørringer, klikker du på Spørreutforming.

  2. Legg til tabellen med postene du vil arkivere.

  3. Dobbeltklikk stjernen (*) i tabellen du nettopp la til, i utformingsvinduet for spørringen. Tabellnavnet og en stjerne vises i den første kolonnen i utformingsrutenettet for spørringen.

  4. Dobbeltklikk de samme feltene som du brukte til å angi en betingelse i tilføyingsspørringen, i utformingsvinduet for spørringen.

  5. Bruk Vilkår-raden til å angi vilkår for feltene du nettopp la til. Hvis du vil ha mer informasjon om bruk av vilkår, kan du se artikkelen Eksempler på spørringsvilkår.

    Viktig!: Hvis tilføyings- eller lag-tabell-spørringen brukte en parameter, må du sørge for at slettespørringen også gjør det. Husk også at du angir den samme verdien for begge spørringene. Hvis du angir forskjellige parameterverdier, kan du miste data. Hvis du vil hindre tap av data, bør du vurdere å bruke et skjema til å samle inn verdiene og få spørringene til å be skjemaet om inndataverdiene. Hvis du vil ha mer informasjon, kan du se artikkelen Innføring i spørringer.

  6. Klikk Slett i Spørringstype-gruppenUtforming-fanen.

    Slett-raden vises i utformingsrutenettet for spørringen.

    Slett-raden i spørringsutformingsrutenettet

  7. Trykk CTRL+S for å lagre spørringen.

Trinn 4: Opprett en makro for å kjøre både tilføyings- og slettespørringer

  1. Klikk på Makro i gruppen Makroer og kodeOpprett-fanen.

  2. Klikk rullegardinpilen ved siden av Legg til ny handling, og klikk deretter OpenQuery.

    Handlingen OpenQuery vises og viser argumentene.

  3. Velg spørringen (tilføy eller lag tabell) som du opprettet i trinn 2, i spørringsnavnboksen.

  4. Klikk rullegardinpilen ved siden av Legg til ny handling, og klikk deretter OpenQuery.

    Handlingen OpenQuery vises og viser argumentene.

  5. Velg slettespørringen du opprettet i trinn 3, i spørringsnavnboksen.

  6. Trykk CTRL+S for å lagre makroen.

    Når du vil arkivere poster, kjører du makroen.

Til toppen av siden

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.