Baze podataka programa Microsoft Access možete organizirati i upravljati povremenom arhiviranjem starih ili neaktivnih zapisa. Možete arhivirati sve tablice u bazi podataka, određene tablice ili samo određene zapise – na primjer, zapise starije od određenog datuma. U ovoj se temi objašnjava kako koristiti tri različite mogućnosti arhiviranja podataka u bazi podataka programa Access.
Sadržaj članka
Kada biste trebali razmotriti arhiviranje?
Kada baza podataka na računalu sadrži podatke koje više ne namjeravate koristiti, ali te podatke želite zadržati pri ruci u slučaju da vam zatrebaju u određeno vrijeme ili da se zadvoje pravila zadržavanja podataka, arhiviranje je dobar način zadržavanja takvih podataka. Arhiviranje se često koristi i za zadržavanje podataka na temelju uvjeta datuma, primjerice na kraju mjeseca.
Načini arhiviranja podataka
U sljedećoj su tablici navedene metode arhiviranja podataka, opis metode, objašnjenje kada biste trebali koristiti svaku metodu i druge specifične napomene za metodu.
Metoda |
Opis |
Koristite kada... |
Ostale napomene |
Povremeno stvara arhivsku kopiju određene tablice i zamjenjuje je novom, praznom kopijom tablice. |
Svi zapisi u tablici ispunjavaju uvjete koje koristite za određivanje arhiviranja. PRIMJER: You have a table that stores daily temperature extremes. Svake godine arhiviљ tablicu i poиneљ ispočetka s praznom. |
|
|
Povremeno izradite arhivsku kopiju stražnje baze podataka, a zatim zamijenite stražnju bazu podataka novom, praznom. Potrebna je podijeljena baza podataka (baza podataka koja sadrži: datoteku baze podataka koja sadrži sve tablice i datoteku pristupne baze podataka koja sadrži sve ostale objekte baze podataka). |
Svi zapisi u većini tablica u bazi podataka zadovoljavaju uvjet koji koristite za određivanje arhiviranja. PRIMJER: Vaša baza podataka sastoji se od nekoliko tablica s različitim vrstama meteoroloških podataka. Svake godine arhiviљeљ sve tablice. |
|
|
Povremeno pokreće upit koji odabire zapise za arhiviranje i dodaje podatke u arhivsku tablicu, a zatim pokrenete upit da biste odabrali iste zapise (iz izvorne tablice) i izbrisali ih. |
Neki zapisi u tablici ispunjavaju uvjet koji koristite za određivanje arhiviranja. PRIMJER: Želite arhivirati transakcije biblioteke (odjave) ako je datum prijave star najmanje godinu dana. |
Upozorenje: Ako u upitima morate koristiti parametre, stvorite obrazac da biste upravljali parametrima. U suprotnom riskirate gubitak podataka. |
Zaobilaženje referencijalnog integriteta
Ako su zapisi koje želite arhivirati povezani sa zapisima u drugim tablicama, možda ćete morati zaobilazno raditi na odnosu. Ako su zapisi koje želite arhivirati "podređeni" zapisi (pripadaju strani "više" u odnos preslikavanja jednog člana na više njih ), vjerojatno ih možete sigurno arhivirati bez brige. Ako su zapisi koje želite arhivirati "nadređeni" zapisi (pripadaju strani "jednog" u odnos preslikavanja jednog člana na više njih ), kada ih arhiviujete, povezani zapisi "podređeni" mogu:
-
Onemogućite brisanje "nadređenih" zapisa. To može uzrokovati probleme ako ste u arhivsku tablicu već dodali "nadređene" zapise.
– ili –
-
Postanite "napušteni" – zapisi koji pripadaju "nadređenom" koji ne postoji. To može uzrokovati probleme s integritetom podataka i funkcijama u bazi podataka koji koriste "napuštene" zapise.
Da biste u obzir nametnuli referencijalni integritet, učinite sljedeće:
-
Odredite koji "podređeni" zapisi pripadaju zapisima koje želite arhivirati. Da biste, primjerice, arhivirali zapise o imovini koja je pozajmljena u biblioteci, najprije odredite postoje li transakcije otvorene na tim resursima, npr. jesu li sredstva odjavljena, ali nisu vraćena.
-
Učinite nešto od sljedećeg:
-
Ako se "podređeni" zapisi uvijek mogu sigurno izbrisati, provjerite nameće li odnos referencijalni integritet kaskadnim brisanjem. Time se jamči brisanje svih povezanih "podređenih" zapisa.
-
Ako se "podređeni" zapisi ne mogu uvijek sigurno izbrisati, preporučujemo arhiviranje svih tablica u bazi podataka.
-
Create upit koji odabire "nadređene" zapise koji nemaju "podređene" zapise. Zatim pomoću tog prvog upita stvorite arhivske upite (pogledajte odjeljak Povremeno premještaj zapise u arhivsku tablicu ) umjesto da koristite "nadređenu" tablicu.
-
Povremeno zamijenite tablicu
Ako želite arhivirati sve podatke u tablici, tablicu možete povremeno zamijeniti praznom kopijom.
Važno: Ako je tablica koju arhivite povezana s drugim tablicama, možda ćete morati zaobilazno raditi na referencijalnom integritetu.
-
U navigacijskom oknu odaberite tablice koje želite arhivirati, pritisnite CTRL + C, a zatim CTRL + V.
-
U dijaloškom okviru Lijepljenje tablice kao u odjeljku Mogućnosti lijepljenja odaberite Samo struktura, a zatim kliknite U redu.
Access će kopiju dodijeliti nazivu kopije izvorne tablice. -
U navigacijskom oknu desnom tipkom miša kliknite izvornu tablicu, a zatim na izborničkom prečacu kliknite Preimenuj.
Tablici dodijelite drugi naziv da biste naznačili što sadrži, npr. "DailyTemperatureExtremes_archive_2019". -
U navigacijskom oknu desnom tipkom miša kliknite praznu kopiju, a zatim na izborničkom prečacu kliknite Preimenuj. Promijenite naziv izvorne tablice.
Povremeno zamijenite sve tablice
Ako koristite podijeljenu bazu podataka, možete povremeno zamijeniti sve tablice zamjenom stražnje baze podataka praznom kopijom.
Da biste to učinili, najprije pripremite praznu kopiju. Osim ako se dizajn baze podataka ne promijeni, ovu praznu kopiju možete ponovno koristiti svaki put kada arhivite. Da biste arhivirali samo preimenujte postojeću stražnju bazu podataka da biste naznačili da je to arhiva i spremite praznu kopiju kao novu back-end bazu podataka.
Priprema prazne kopije stražnje baze podataka
Najprije uvezite definicije tablice za sve tablice u stražnjoj bazi podataka.
-
Na kartici Datoteka kliknite Novo, odaberite Prazna baza podataka, a zatim kliknite Create.
-
Zatvorite tablicu1.
-
Na kartici Vanjski podaci u grupi Uvoz & veze kliknite Access.
-
U dijaloškom okviru Dohvaćanje vanjskih podataka – baza podataka programa Access odaberite Uvoz tablica, upita, obrazaca , izvješća, makronaredbi i modula u trenutnu bazu podataka, a zatim kliknite Pregledaj.
-
U dijaloškom okviru Otvaranje datoteke odaberite stražnju bazu podataka. Kliknite Otvori da biste zatvorili dijaloški okvir Otvaranje datoteke, a zatim kliknite U redu.
-
U dijaloškom okviru Uvoz objekata kliknite Mogućnosti.
-
U odjeljku Uvoz tablicaodaberite Samo definicije.
-
Na kartici Tablice kliknite Odaberi sve, zatim U redu, a potom Zatvori.
Dodavanje podataka u bilo koju tablicu s vrijednostima u praznoj kopiji
Za svaku tablicu s vrijednostima učinite sljedeće:
-
Veza na tablicu s vrijednostima u postojećoj stražnjoj bazi podataka.
-
Create upit s dodavanjem koji u kopiju dodaje sve zapise iz izvornika.
Zamjena stražnje baze podataka praznom kopijom
Najprije preimenujte postojeću stražnju bazu podataka da biste naznačili da je sada arhiva. Zatim otvorite praznu kopiju i spremite je pomoću izvornog naziva stražnje baze podataka.
-
Kliknite karticu Datoteka , a zatim Spremi bazu podataka kao. Možda će se od vas zatražiti da zatvorite sve otvorene objekte; ako je tako, kliknite U redu. Otvorit će se dijaloški okvir Spremanje u obliku.
-
U okviru Spremi u (pri vrhu dijaloškog okvira Spremanje u obliku provjerite spremate li datoteku na isto mjesto kao izvorna stražnja baza podataka.
-
U okvir Naziv datoteke unesite naziv izvorne stražnje baze podataka.
-
U okviru Spremi u obliku odaberite Baza podataka programa Access (*.accdb).
Povremeno premještanje zapisa u arhivsku tablicu
To je postupak od četiri koraka koji zahtijeva stvaranje prazne kopije tablice koja sadrži zapise koje želite arhivirati, stvaranje upita s dodavanjem radi kopiranja zapisa iz izvorne tablice u arhivsku tablicu, stvaranje brisanje upita za uklanjanje arhiviranih zapisa iz izvorne tablice i stvaranje makronaredbe za pokretanje oba upita koja se mogu pokrenuti kada želite arhivirati. Taj naizgled složeni postupak može biti jednostavan ako slijedite korake redoslijedom kojim su navedeni u nastavku:
Prvi korak: Create arhivske tablice
Drugi korak: Create upit s dodavanjem radi kopiranja podataka u arhivsku tablicu
Treći korak: Create upit s brisanjem radi uklanjanja podataka iz izvorne tablice
Četvrti korak: Create makronaredbu za pokretanje upita s dodavanjem i brisanjem
Prvi korak: Create arhivske tablice
Da biste zadržali sve arhivirane zapise u jednoj tablici, učinite ovaj korak jednom. Arhivska tablica koju stvorite u ovom koraku sadrži sve arhivirane zapise.
Da biste izbrisali staru arhivsku tablicu kada stvorite novu, umjesto da to učinite, možete koristiti upit za stvaranje tablice za kopiranje podataka u arhivsku tablicu. Da biste to učinili, prijeđite na drugi korak.
Da biste prilikom svakog arhiviranja koristili novu arhivsku tablicu, ali i zadržali stare arhivske tablice, preimenujte staru arhivsku tablicu prije stvaranja nove. Ako arhivi koristite na temelju datuma, s obzirom na to da stare arhivske tablice dodijelite nazive u skladu s rasponom datuma koji predstavljaju.
-
U navigacijskom oknu odaberite tablicu koja sadrži zapise za arhiviranje, pritisnite CTRL + C, a zatim ctrl + V.
-
U okviru Naziv tablice izbrišite riječi Kopiraj od i dodajte podvlaku i riječ "arhiviraj" nazivu postojeće tablice, a zatim kliknite U redu. Ako se, primjerice, izvorna tablica naziva Transakcije , arhivska tablica ima naziv Transactions_archive.
-
U dijaloškom okviru Lijepljenje tablice kao u odjeljku Mogućnosti lijepljenja odaberite Samo struktura.
Drugi korak: Create upit s dodavanjem radi kopiranja podataka u arhivsku tablicu
-
Na kartici Stvaranje u grupi Upiti kliknite Dizajn upita.
-
Dodajte tablicu sa zapisima koje želite arhivirati.
-
U prozoru dizajna upita dvokliknite zvjezdicu (*) u tablici koju ste upravo dodali. Naziv tablice i zvjezdica pojavljuju se u prvom stupcu rešetke dizajna upita.
Napomena: Zvjezdica označava da upit u izlazu upita treba obuhvatiti sva polja iz tablice. Ako koristite zvjezdicu, ako su polja dodana ili uklonjena iz tablice, izlaz upita prilagođava se u skladu s tim.
-
U prozoru dizajna upita dvokliknite polje koje želite koristiti da biste odredili uvjet koji zapisi moraju zadovoljiti prije arhiviranja. Ako, primjerice, tablica Transakcije sadrži polje pod nazivom Datum prijave, a želite arhivirati sve zapise u kojima je taj datum star više od godinu dana, dvokliknite polje i pojavit će se u sljedećem praznom stupcu rešetke dizajna upita.
Ponovite taj korak ako želite koristiti kriterije s dodatnim poljima.
-
Pomoću retka Kriteriji navedite kriterije za polja koja ste upravo dodali. Možete, primjerice, odrediti da datum prijave mora biti prije 1. siječnja 2019. pomoću izraza<#1/1/2019# u retku Kriteriji.
Ako se vrijednosti kriterija mijenjaju prilikom svakog arhiviranja, upit zatražite unos. Da biste to učinili, koristite parametar u retku Kriteriji da bi upit zatražio unos. Da biste koristili parametar, koristite izraz kao i inače, ali umjesto određene vrijednosti koristite kratko pitanje okruženo uglatim zagradama. Možete, primjerice, koristiti izraz <[Arhiviranje transakcija dovršenih prije:], ovako:
Dodatne informacije o korištenju parametara potražite u članku Uvod u upite.
Da biste odredili zamjenske uvjete , možete koristiti i redak ili. Dodatne informacije o korištenju kriterija potražite u članku Primjeri kriterija upita.
Savjet: Ako koristite polje datuma za određivanje kriterija i želite arhivirati sve zapise starije od trenutnog datuma, u redak Kriteriji za polje datuma unesite <Date().
-
Učinite nešto od sljedećeg:
Ako ste već stvorili arhivsku tablicu, pomoću upita s dodavanjem dodajte navedene zapise u tu tablicu:
-
Na kartici Dizajn u grupi Vrsta upita kliknite Upit s dodavanjem.
-
U dijaloškom okviru Dodavanje u okviru Naziv tablice odaberite naziv arhivske tablice, a zatim kliknite U redu.
U rešetki dizajna upita pojavit će se redak Dodaj u.
-
Poništite redak Dodaj u za sva polja koja ste koristili za određivanje kriterija. (Samo zvjezdica mora imati vrijednost za Dodaj u.)
Ako niste stvorili arhivsku tablicu, pomoću upita sa stvaranjem tablice stvorite arhivsku tablicu pomoću navedenih zapisa:
-
Na kartici Dizajn u grupi Vrsta upita kliknite Stvaranje tablice.
-
U dijaloškom okviru Stvaranje tablice u okvir Naziv tablice upišite naziv arhivske tablice, a zatim kliknite U redu.
-
-
Da biste spremili upit, pritisnite CTRL+S.
Treći korak: Create upit s brisanjem radi uklanjanja podataka iz izvorne tablice
-
Na kartici Stvaranje u grupi Upiti kliknite Dizajn upita.
-
Dodajte tablicu sa zapisima koje želite arhivirati.
-
U prozoru dizajna upita dvokliknite zvjezdicu (*) u tablici koju ste upravo dodali. Naziv tablice i zvjezdica pojavljuju se u prvom stupcu rešetke dizajna upita.
-
U prozoru dizajna upita dvokliknite ista polja koja ste koristili za određivanje uvjeta u upitu s dodavanjem.
-
Pomoću retka Kriteriji navedite kriterije za polja koja ste upravo dodali. Dodatne informacije o korištenju kriterija potražite u članku Primjeri kriterija upita.
Važno: Ako je upit s dodavanjem ili stvaranjem tablice koristio parametar, provjerite radi li i upit s brisanjem. Imajte na umu i da za oba upita unesete istu vrijednost. Ako unesete različite vrijednosti parametara, možete izgubiti podatke. Da biste spriječili gubitak podataka, razmislite o korištenju obrasca za prikupljanje vrijednosti i postavljanje upita od obrasca traži ulazne vrijednosti. Dodatne informacije potražite u članku Uvod u upite.
-
Na kartici Dizajn u grupi Vrsta upita kliknite Izbriši.
U rešetki dizajna upita pojavit će se redak Brisanje.
-
Da biste spremili upit, pritisnite CTRL+S.
Četvrti korak: Create makronaredbu za pokretanje upita s dodavanjem i brisanjem
-
Na kartici Stvaranje u grupi Makronaredbe i kod kliknite Makronaredba.
-
Kliknite padajuću strelicu pokraj mogućnosti Dodaj novu akciju, a zatim Kliknite OpenQuery.
Pojavit će se akcija OpenQuery i prikazat će se njezini argumenti.
-
U okviru Naziv upita odaberite upit (dodavanje ili stvaranje tablice) koji ste stvorili u 2. koraku.
-
Kliknite padajuću strelicu pokraj mogućnosti Dodaj novu akciju, a zatim Kliknite OpenQuery.
Pojavit će se akcija OpenQuery i prikazat će se njezini argumenti.
-
U okviru Naziv upita odaberite upit za brisanje koji ste stvorili u 3. koraku.
-
Pritisnite CTRL + S da biste spremili makronaredbu.
Kada želite arhivirati zapise, pokrenite makronaredbu.