Arkivere Access-data

Vigtigt: Denne artikel er maskinoversat. Se ansvarsfraskrivelsen. Du kan finde den engelske version af denne artikel her til din orientering.

Du kan lettere holde styr på dine data, hvis du regelmæssigt arkiverer gamle eller inaktive poster. Antag f.eks., at du bruger Access til at administrere et udlåningsbibliotek. Du har muligvis en tabel, der holder styr på udlånstransaktioner, som indeholder et felt med datoen for udlån og et felt med datoen for returnering. Din politik for lagring af poster er muligvis at arkivere poster for udlånstransaktioner ét år efter returnering af emnet og at destruere posterne efter to år.

Du kan arkivere alle tabellerne i en database, bestemte tabeller eller kun bestemte poster , f.eks. poster, der er ældre end en bestemt dato. I dette emne forklares, hvordan du arkiverer data.

Denne artikel indeholder

Oversigt

Regelmæssigt flytte poster til en arkivtabel

Regelmæssigt udskifte en tabel

Regelmæssigt udskifte alle tabeller

Oversigt

Du bør overveje at arkivere data, når du har data, som du ikke forventer at bruge mere, og du vil have dataene tilgængelige, hvis du alligevel skulle få brug for dem. Du har muligvis en politik, der bestemmer dine arkiveringsplaner, f.eks. en dataopbevaringspolitik.

Arkivering bruges ofte til at lagre data ud fra en dato-betingelse, f.eks. slutning på en kommende måned.

Dataarkiveringsmetoder

Følgende tabel indeholder en liste over metoder til lagring af data, hvornår du bør bruge hver metode og andre overvejelser.

Metode

Beskrivelse

Bruges, når...

Andre overvejelser

Regelmæssigt flytte poster til en arkivtabel

Du kører regelmæssigt en forespørgsel, der vælger de data, du vil arkivere, og føjer dataene til en arkivtabel. Derefter kører du en forespørgsel, der vælger de samme data (fra den oprindelige tabel) og sletter dem.

Nogle af posterne i en tabel opfylder den betingelse, du bruger til at bestemme, om en post skal arkiveres.

EKSEMPEL: Du vil arkivere bibliotekstransaktioner (udlån), hvis afleveringsdatoen er mindst ét år gammel.

  • Kan være nødvendigt at løse referentiel integritet, især hvis de poster, du ønsker at arkivere er i én side af en en-til-mange-relation.

  • Hvis du er nødt til at bruge parametre i dine forespørgsler, skal du oprette en formular til at håndtere parametrene. Hvis du ikke gør det, risikerer du at miste data.

Regelmæssigt udskifte en tabel

Du opretter regelmæssigt en arkivkopi af en bestemt tabel og udskifter derefter tabellen med en ny, tom kopi.

Alle posterne i en tabel opfylder den betingelse, du bruger til at bestemme, om en post skal arkiveres.

EKSEMPEL: Du har en tabel, som du gemmer daglige temperaturekstremer i. Hvert år arkiverer du tabellen og starter forfra med en tom tabel.

  • Du kan være nødt til at omgå den referentielle integritet.

Regelmæssigt udskifte alle tabeller

Du starter med en opdelt database (en database, der består af: en backenddatabasefil, der indeholder alle tabellerne, og en frontenddatabasefil, der indeholder alle de andre databaseobjekter). Du laver regelmæssigt en arkivkopi af backenddatabasen og udskifter derefter backenddatabasen med en ny, tom database.

Alle posterne i de fleste af tabellerne i din database opfylder den betingelse, du bruger til at bestemme, om en post skal arkiveres.

EKSEMPEL: Din database består af flere tabeller med forskellige typer meteorologiske data. Hvert år arkiverer du alle tabellerne.

  • Hvis du har opslagstabeller (tabeller, som du bruger til gemme værdier til opslag, f.eks. postnumre eller afdelinger), kan det være nødvendigt at importere dataene fra disse til den nye backenddatabase.

  • Du kan bruge en makro til denne metode. Du skal arkivere databasen manuelt.

Omgå referentiel integritet

Hvis de poster, du ønsker at arkivere er relateret til poster i andre tabeller, du muligvis kan løse relationen. Hvis de poster, du ønsker at arkivere er "underordnede" poster (de hører til "mange"-siden af en en-til-mange-relation ), kan du sandsynligvis sikkert arkivere dem uden problemer. Hvis de poster, du ønsker at arkivere er "overordnede" poster (de hører til relationens en-siden af en en-til-mange-relation ), når du arkiverer dem deres relaterede "underordnede" poster maj:

  • Forhindre dig i at slette de "overordnede" poster. Dette kan give problemer, hvis du allerede har føjet de "overordnede" poster til arkivtabellen.

    - eller -

  • Blive til "horeunger" (poster, der hører til en "overordnet", der ikke længere eksisterer). Dette kan give problemer med dataintegriteten og forskellige funktioner i din database, der benytter "horeunge"-posterne.

Benyt følgende fremgangsmåde for at tage højde for referentiel integritet:

  1. Find ud af, hvilke "underordnede" poster hører til de poster, du vil arkivere. Hvis du f.eks. vil arkivere poster for aktiver, som du udlåner fra dit bibliotek, skal du først bestemme, om der findes åbne transaktioner for disse aktiver, dvs. om aktiverne er blevet udlånt, men ikke returneret.

  2. Benyt en af følgende fremgangsmåder:

    • Hvis de "underordnede" poster altid kan slettes sikkert, skal du kontrollere, at relationen fremtvinger relationel integritet ved hjælp af kaskadevise sletninger. Dette sikrer, at alle tilknyttede "underordnede" poster slettes.

    • Hvis det ikke altid er sikkert at slette de "underordnede" poster, skal du overveje at arkivere alle tabellerne i databasen.

    • Opret en forespørgsel, der vælger "overordnede" poster, der ikke har nogen "underordnede" poster. Brug derefter den første forespørgsel til at oprette dine arkivforespørgsler (se afsnittet Regelmæssigt flytte poster til en arkivtabel) i stedet for at bruge tabellen med "overordnede".

      Tip: Du kan bruge guiden forespørgsel til at søge efter ikke-relaterede poster. Få mere at vide artiklen sammenligne to tabeller og finde poster uden forekomster.

Øverst på siden

Regelmæssigt flytte poster til en arkivtabel

Først skal lave du en tom kopi af den tabel, der har poster, du ønsker at arkivere. Denne ny, tom tabel er arkivtabellen. Derefter skal oprette du en tilføje forespørgsel for at kopiere poster fra den oprindelige tabel til arkivtabellen. Derefter skal oprette du en slet søgning for at fjerne de arkiverede poster fra den oprindelige tabel. Til sidst skal oprette du en makro, der kører begge forespørgsler. Når du vil arkivere poster, skal køre du makroen.

Tip: Du kan knytte en makro til en knap i en formularer, så makroen køres, når der klikkes på knappen.

Trin 1: Oprette en arkivtabel

Trin 2: Oprette en forespørgsel, der kopierer data til din arkivtabel

Trin 3: Oprette en forespørgsel, der fjerner de samme data fra din oprindelige tabel

Trin 4: Oprette en makro, der kører begge forespørgsler

Trin 1: Oprette en arkivtabel

Hvis du vil beholde alle dine arkiverede poster i én tabel, skal du kun udføre dette trin én gang. Den arkivtabel, du opretter i dette trin, vil indeholde alle dine arkiverede poster.

Hvis du vil destroy gamle arkivtabellen, når du opretter en ny, behøver du ikke at udføre dette trin. Du kan bruge en opret-tabel-forespørgsel i stedet for en tilføjelsesforespørgsel til at kopiere dataene i arkivtabellen. For at gøre dette skal du gå videre til trin 2.

Hvis du vil bruge en ny arkivtabel, hver gang du arkiverer, og du vil beholde dine gamle arkivtabeller, skal du omdøbe din gamle arkivtabel, før du opretter en ny. Hvis du arkiverer ud fra en dato, skal du overveje at navngive dine gamle arkivtabeller i forhold til det datoområde, de repræsenterer.

Bemærk: Hvis du opretter en ny arkivtabel hver gang og bevarer den gamle, skal du omdøbe det gamle arkiv, før du kører dine forespørgsler.

  1. I navigationsruden skal du markere den tabel, der indeholder poster til arkivering, trykke på Ctrl+C og derefter trykke på Ctrl+V.

  2. Vælg Struktur i dialogboksen Indsæt tabel som under Indstillinger for Sæt ind.

  3. I feltet Tabelnavn Slet ord Kopi af og tilføje et understregningstegn og word "Arkiver" til den eksisterende tabelnavn og klik derefter på OK. Hvis den oprindelige tabel hedder transaktioner navnet arkivtabellen for eksempel Transactions_archive.

    Indsæt tabel som

Trin 2: Oprette en forespørgsel, der kopierer data til din arkivtabel

  1. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

  2. Brug dialogboksen Vis tabel til at tilføje den tabel, der indeholder poster, som du vil arkivere. Luk dialogboksen Vis tabel.

  3. I forespørgselsdesignvinduet skal du dobbeltklikke på stjernen (*) i den tabel, du netop har tilføjet. Tabelnavnet og en stjerne vises i første kolonne i forespørgselsgitteret.

    Bemærk: Stjernen angiver, at forespørgslen skal inkludere alle felterne fra tabellen i forespørgselsresultatet. Når du bruger stjernen, justeres forespørgselsresultatet automatisk, hvis felter tilføjes eller fjernes.

  4. I forespørgselsdesignvinduet skal du dobbeltklikke på det felt, du vil bruge til at angive en betingelse, som poster skal opfylde, før du arkiverer dem. Hvis din tabel med navnet Transaktioner f.eks. indeholder feltet Afleveringsdato, og du vil arkivere alle poster, hvor datoen er mere end ét år siden, skal du dobbeltklikke på Afleveringsdato. Feltet vises i den næste tomme kolonne i forespørgselsgitteret.

    Forespørgselsgitter

    Gentag dette trin, hvis du vil bruge kriterier med flere felter.

  5. Brug række kriterier til at angive kriterier for de felter, du lige har tilføjet. For eksempel du kan angive, markeret i datoen skal være tidligere end 1st januar 2008 ved hjælp af udtrykket < #1/1/2008 # i rækken kriterier.

    Hvis dine kriterieværdier ændres, hver gang du arkiverer, skal du konfigurere din forespørgsel til at bede om input. Det gør du ved at bruge en parameter på rækken Kriterier, så forespørgslen beder om input. Når du vil bruge en parameter, skal du bruge et udtryk, som du normalt ville, men i stedet for en angivet værdi skal du bruge et kort spørgsmål i kantede parenteser. Du kunne f.eks. bruge udtrykket <[Arkivér transaktioner fuldført før:] på følgende måde:

    Parameterudtryk

    Du finder flere oplysninger om brug af parametre i artiklen Få en forespørgsel til at bede om input.

    Du kan også bruge rækken eller til at angive alternative betingelser. Du finder flere oplysninger om brug af kriterier i artiklen Eksempler på forespørgselskriterier.

    Tip: Hvis du bruger et datofelt til at angive kriterier, og du vil arkivere alle poster, der er ældre end dags dato, skal du skrive <Dato() i rækken Kriterier for datofeltet.

  6. Benyt en af følgende fremgangsmåder:

    • Hvis du allerede har oprettet arkivtabellen, skal du bruge en tilføjelsesforespørgsel til at føje de angivne poster til den pågældende tabel.

      1. Klik på Tilføj i gruppen Forespørgselstype under fanen Design.

      2. Vælg navnet på arkivtabellen i boksen Tabelnavn i dialogboksen Tilføj, og klik derefter på OK.

        Føj til

        Rækken Føj til vises i forespørgselsgitteret.

      3. Ryd rækken Føj til for alle felter, som du brugte til at angive kriterier. (Kun stjernen skal have en værdi for Føj til).

        Rækken Føj til i forespørgselsgitteret

    • Hvis du ikke har oprettet arkivtabellen, skal du bruge en tabeloprettelsesforespørgsel til at oprette arkivtabellen ved at bruge de angivne poster.

      1. Klik på Opret tabel i gruppen Forespørgselstype på fanen Design.

      2. Skriv navnet på arkivtabellen i boksen Tabelnavn i dialogboksen Opret tabel, og klik derefter på OK.

  7. Tryk på Ctrl+S for at gemme forespørgslen.

Trin 3: Oprette en forespørgsel, der fjerner de samme data fra din oprindelige tabel

  1. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

  2. Brug dialogboksen Vis tabel til at tilføje den tabel, der indeholder poster, som du vil arkivere. Luk dialogboksen Vis tabel.

  3. I forespørgselsdesignvinduet skal du dobbeltklikke på stjernen (*) i den tabel, du netop har tilføjet. Tabelnavnet og en stjerne vises i første kolonne i forespørgselsgitteret.

  4. I forespørgselsdesignvinduet skal du dobbeltklikke på de samme felter, som du brugte til at angive en betingelse i tilføjelsesforespørgslen.

  5. Brug rækken Kriterier til at angive kriterier for de felter, som du netop tilføjede. Du finder flere oplysninger om brug af kriterier i artiklen Eksempler på forespørgselskriterier.

    Vigtigt: Hvis der blev brugt en parameter i din tilføjelses- eller tabeloprettelsesforespørgsel, skal der også bruges en i din sletteforespørgsel. Du skal desuden sikre, at du skriver samme værdi for begge forespørgsler. Du finder flere oplysninger i artiklen Få en forespørgsel til at bede om input.

  6. Klik på Slet i gruppen Forespørgselstype under fanen Design.

    Rækken Slet vises i forespørgselsgitteret.

    Rækken Slet i forespørgselsgitteret

  7. Tryk på Ctrl+S for at gemme forespørgslen.

Trin 4: Oprette en makro, der kører begge forespørgsler

  1. Klik på Makro i gruppen Andet under fanen Opret. Hvis denne kommando ikke er tilgængelig, skal du klikke på pilen under enten knappen Modul eller Klassemodul, og klik derefter på Makro.

  2. Vælg OpenQuery i den første række i designgitteret makro i kolonnen handling.

    Makrohandling i Åben forespørgsel

  3. Vælg i bunden af gitteret under Handlingsargumenter, i feltet Forespørgselsnavn den (føje eller tabeloprettelse) forespørgsel, du oprettede i trin 2 fra på rullelisten.

    Forespørgselsargument for makrohandling for åben forespørgsel

  4. Vælg OpenQuery i den anden række i designgitteret makro i kolonnen handling.

  5. Vælg sletteforespørgslen på rullelisten nederst i gitteret, under Handlingsargumenter, i feltet Navn til forespørgslen.

    Din makro bør se nogenlunde sådan ud:

    makro klar til at gemme

  6. Tryk på Ctrl+S for at gemme makroen.

    Kør makroen, når du vil arkivere poster.

Øverst på siden

Regelmæssigt udskifte en tabel

Hvis du altid vil arkivere alle dataene i en tabel, behøver du ikke at bruge forespørgsler eller makroer. Som et alternativ kan du regelmæssigt udskifte tabellen med en tom kopi.

Vigtigt: Hvis den tabel, som du arkiverer, er knyttet til andre tabeller, skal du muligvis omgå referentiel integritet.

  1. I navigationsruden skal du markere den tabel, du vil arkivere, trykke på Ctrl+C og derefter trykke på Ctrl+V.

  2. Markér Struktur under Indstillinger for Sæt ind i dialogboksen Indsæt tabel som, og klik derefter på OK.

    Access navngiver kopi kopi af oprindelige tabelnavn.

  3. Højreklik på den oprindelige tabel i navigationsruden, og klik derefter på Omdøb i genvejsmenuen, der vises.

    Give tabellen et navn, der angiver, hvad den indeholder, såsom "DailyTemperatureExtremes_archive_2007".

  4. Højreklik på den tomme kopi i navigationsruden, og klik derefter på Omdøb i genvejsmenuen, der vises.

    Giv den tomme kopi det oprindelige tabelnavn.

Øverst på siden

Regelmæssigt udskifte alle tabeller

Hvis du bruger en opdelt database, kan du regelmæssigt udskifte alle tabeller ved at udskifte backenddatabasen med en tom kopi.

Først skal du forberede den tomme kopi. Hvis dit databasedesign ikke ændres, kan du genbruge denne kopi, hver gang du arkiverer. Når du derefter vil arkivere, skal du omdøbe den eksisterende backenddatabase for at angive, at den er et arkiv, og derefter gemme den tomme kopi som den nye backenddatabase.

Forberede en tom kopi af en backenddatabase

Importér tabeldefinitionerne for alle tabellerne i backenddatabasen.

  1. Opret en ny, tom database. Slet Tabel1.

  2. Klik på fanen Eksterne Data i gruppen Importeradgang.

  3. I dialogboksen Hent eksterne data skal du vælge Importér tabeller, forespørgsler, formularer, rapporter, makroer og moduler i den aktuelle database og derefter klikke på Gennemse.

  4. Vælg backenddatabasen i dialogboksen Åbn fil. Klik på Åbn for at lukke dialogboksen Åbn fil, og klik derefter på OK.

  5. Klik på Indstillinger i dialogboksen Importér objekter.

  6. Vælg Kun definition under Importér tabeller.

  7. Klik på Markér alt under fanen Tabeller, klik på OK, og klik derefter på Luk.

Føj derefter data til eventuelle opslagstabeller i den tomme kopi. Benyt følgende fremgangsmåde for hver opslagstabel:

  1. Opret link til opslagstabellen i den eksisterende backenddatabase.

  2. Opret en tilføjelsesforespørgsel, der føjer alle poster fra originalen til kopien.

Erstatte backenddatabasen med en tom kopi

Omdøb først den eksisterende backenddatabase for at angive, at den nu er et arkiv.

Åbn derefter den tomme kopi, og gem den under det oprindelige backenddatabasenavn.

  1. Klik på Microsoft Office-knappen Office-knapflade , og peg derefter på Gem som. Menuen Gem som åbnes.

  2. Klik på Access 2007-database under Gem databasen i et andet format.

Øverst på siden

Bemærk: Ansvarsfraskrivelse for maskinoversættelse: Denne artikel er blevet oversat af et computersystem uden menneskelig indgriben. Microsoft tilbyder disse maskinoversættelse for at hjælpe ikke-engelsktalende brugere til at kunne nyde indhold om Microsofts produkter, tjenester og teknologier. Da artiklen er maskinoversat, kan den indeholde forkerte ord eller syntaks- eller grammatikfejl.

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×