Microsoft Access baze podataka možete da održavate organizovanim i podložne upravljanju tako što ćete periodično arhivirati stare ili neaktivne zapise. Možete da arhivirate sve tabele u bazi podataka, određene tabele ili samo određene zapise – na primer, zapise koji su stariji od određenog datuma. Ova tema objašnjava kako da koristite tri različite opcije za arhiviranje podataka u Access bazi podataka.
U ovom članku
Kada bi trebalo da razmotrite arhiviranje?
Kada baza podataka na računaru sadrži podatke koje više ne planirate da koristite, ali želite da vam ti podaci budu korisni u slučaju da vam zatrebaju u nekom trenutku ili da ispunite smernice za zadržavanje podataka, arhiviranje je dobar način da zadržite takve podatke. Arhiviranje se često koristi i za zadržavanje podataka na osnovu uslova datuma, kao što je na kraju meseca.
Načini arhiviranja podataka
Sledeća tabela navodi metode za arhiviranje podataka, opis metoda, objašnjenje toga kada treba da koristite svaki metod i druga konkretna razmatranja za metod.
Metod |
Opis |
Koristite je kada... |
Druga razmatranja |
Povremeno pravi arhivu kopije određene tabele i zamenjuje je novom, praznom kopiji tabele. |
Svi zapisi u tabeli ispunjavaju uslove koje koristite da biste odredili da li želite da arhivirate. PRIMER: You have a table that stores dnevne temperature extremes. Svake godine arhivirate tabelu i počinjete iz početka sa praznom tabelom. |
|
|
Povremeno napravite arhiviranu kopiju pozadinske baze podataka, a zatim zamenite potpornu bazu podataka novom, praznom. Zahteva razdeljenu bazu podataka (bazu podataka koja sadrži: datoteku pozadinske baze podataka koja sadrži sve tabele; i izloženu datoteku baze podataka koja sadrži sve ostale objekte baze podataka). |
Svi zapisi u većini tabela u bazi podataka ispunjavaju uslov koji koristite da biste odredili da li želite da arhivirate. PRIMER: Baza podataka se sastoji od nekoliko tabela sa različitim vrstama meteoroloških podataka. Svake godine arhivirate sve tabele. |
|
|
Povremeno pokreće upit koji bira zapise za arhiviranje i dodaje podatke u tabelu arhive, a zatim pokrećete upit da biste izabrali iste zapise (iz originalne tabele) i izbrisali ih. |
Neki zapisi u tabeli ispunjavaju uslov koji koristite da biste odredili da li želite da arhivirate. PRIMER: Želite da arhivirate transakcije biblioteke (odjavljivanja) ako je datum prijavljenog najmanje godinu dana star. |
Upozorenje: Ako treba da koristite parametre u upitima, trebalo bi da napravite obrazac za rukovanje parametrima. U suprotnom rizikujete gubitak podataka. |
Rad sa referencijalnim integritetom
Ako su zapisi koje želite da arhivirate povezani sa zapisima u drugim tabelama, možda ćete morati da zaobiđite relaciju. Ako su zapisi koje želite da arhivirate "podređeni" zapisi (oni pripadaju strani "više" neke odnos jedan-prema-više ), verovatno možete bezbedno da ih arhivirate bez brige. Ako su zapisi koje želite da arhivirate "nadređeni" zapisi (oni pripadaju strani "jedan" neke odnos jedan-prema-više ), kada ih arhivirate, njihovi srodni "podređeni" zapisi mogu da:
-
Sprečite brisanje "nadređenih" zapisa. To može dovesti do problema ako ste već dodali "nadređene" zapise u tabelu arhive.
-Ili-
-
Postanite "siročići" – zapisi koji pripadaju "nadređenom" koji ne postoji. To može dovesti do problema sa integritetom podataka i funkcionalnošću u bazi podataka koja koristi zapise "siroče".
Da biste preuzeli referencijalni integritet, izvršite sledeće korake:
-
Utvrdite koji "podređeni" zapisi pripadaju zapisima koje želite da arhivirate. Na primer, da biste arhivirali zapise o resursima koji su pozajmili u biblioteci, prvo utvrdite da li su neka sredstva otvorena za te resurse, tj. da li su sredstva odjavljena, ali nisu vraćena.
-
Uradite nešto od sledećeg:
-
Ako zapisi "podređenih" uvek mogu bezbedno da se izbrišu, uverite se da relacija nameće referencijalni integritet, uz kaskadna brisanja. To osigurava da će svi povezani "podređeni" zapisi biti izbrisani.
-
Ako nije moguće uvek bezbedno izbrisati podređene zapise, razmotrite arhiviranje svih tabela u bazi podataka.
-
Create koji bira "nadređene" zapise koji nemaju "podređene" zapise. Zatim koristite taj prvi upit da biste kreirali upite arhive (pogledajte odeljak Periodično premeštanje zapisa u tabelu arhive) umesto korišćenja "nadređene" tabele.
-
Periodično zamena tabele
Ako želite da arhivirate sve podatke u tabeli, tabelu možete povremeno da zamenite praznom kopiji.
Važno: Ako je tabela koju arhivirate povezana sa drugim tabelama, možda ćete morati da zaobiđite referencijalni integritet.
-
U oknu za navigaciju izaberite tabele koje želite da arhivirate, pritisnite kombinaciju tastera CTRL+C, a zatim pritisnite kombinaciju tastera CTRL+V.
-
U dijalogu Lepljenje tabele kao , u okviru Opcije lepljenja izaberite stavku Samo struktura, a zatim kliknite na dugme U redu.
Access imenuje kopiju kao kopiju originalne tabele. -
U oknu za navigaciju kliknite desnim tasterom miša na originalnu tabelu, a zatim u priručnom meniju izaberite stavku Preimenuj.
Dajte tabeli drugo ime da naznači šta sadrži, na primer "DailyTemperatureExtremes_archive_2019". -
U oknu za navigaciju kliknite desnim tasterom miša na praznu kopiju, a zatim u priručnom meniju izaberite stavku Preimenuj. Preimenujte ga koristeći ime originalne tabele.
Periodično zamena svih tabela
Ako koristite razdeljenu bazu podataka, možete povremeno da zamenite sve tabele tako što ćete potpornu bazu podataka zameniti praznom kopiji.
Da biste to uradili, prvo pripremite praznu kopiju. Ako se dizajn baze podataka ne promeni, možete ponovo da koristite ovu praznu kopiju svaki put kada arhivirate. Da biste arhivirali samo preimenujte postojeću pozadinsku bazu podataka kako biste ukazali na to da je u arhivi, sačuvajte praznu kopiju kao novu potpornu bazu podataka.
Priprema prazne kopije pozadinske baze podataka
Prvo uvezite definicije tabela za sve tabele u potpornoj bazi podataka.
-
Na kartici Datoteka izaberite stavku Novo, izaberite stavku Prazna baza podataka, a zatim kliknite Create.
-
Zatvorite tabelu1.
-
Na kartici Spoljni podaci, u grupi Uvoz & izaberite stavku Access.
-
U dijalogu Preuzimanje spoljnih podataka – Access baza podataka izaberite stavku Uvezi tabele, upite, obrasce, izveštaje, makroe i module u trenutnu bazu podataka, a zatim kliknite na dugme Potraži.
-
U dijalogu Otvaranje datoteke izaberite potpornu bazu podataka. Kliknite na dugme Otvori da biste zatvorili dijalog Otvaranje datoteke, a zatim kliknite na dugme U redu.
-
U dijalogu Uvoz objekata izaberite stavku Opcije.
-
U okviru Uvoz tabela izaberite stavku Samo definicija.
-
Na kartici Tabele izaberite stavku Izaberi sve, kliknite na dugme U redu, a zatim na dugme Zatvori.
Dodavanje podataka u sve tabele za pronalaženje u praznoj kopiji
Za svaku tabelu za pronalaženje uradite sledeće:
-
Povežite se sa tabelom za pronalaženje u postojećoj potpornoj bazi podataka.
-
Create za dodavanje koji dodaje sve zapise od originala u kopiju.
Zamena pozadinske baze podataka praznom kopiji
Prvo preimenujte postojeću pozadinsku bazu podataka da biste naznačili da je sada arhiva. Zatim otvorite praznu kopiju i sačuvajte je koristeći originalno ime potporne baze podataka.
-
Izaberite karticu Datoteka , a zatim izaberite stavku Sačuvaj bazu podataka kao. Možda će vam biti zatraženo da zatvorite sve otvorene objekte; ako kliknete na dugme U redu. Otvara se dijalog Sačuvaj kao.
-
U polju Sačuvaj u (na vrhu dijaloga Sačuvaj kao) uverite se da datoteku čuvate na istom mestu kao i originalna potporna baza podataka.
-
U polje Ime datoteke unesite ime originalne potporne baze podataka.
-
U polju Sačuvaj kao tip izaberite stavku Access baza podataka (*.accdb).
Periodično premeštanje zapisa u tabelu arhive
Ovo je proces od četiri koraka koji zahteva pravljenje prazne kopije tabele koja sadrži zapise koje želite da arhivirate, kreiranje upita za dodavanje radi kopiranja zapisa iz originalne tabele u tabelu arhive, pravljenje brisanje upita za uklanjanje arhiviranih zapisa iz originalne tabele i konačno kreiranje makroa za pokretanje oba upita koja se mogu pokrenuti kada želite da arhivirate. Ovaj naizgled složeni proces može biti lak ako pratite korake redosledom kojim su prikazani ispod:
1. korak: Create tabelu arhive
2. korak: Create za dodavanje da biste kopirali podatke u tabelu arhive
3. korak: Create upit za brisanje za uklanjanje podataka iz originalne tabele
4. korak: Create makro za pokretanje upita za dodavanje i brisanje
1. korak: Create tabelu arhive
Da biste sve arhivirane zapise zadržali u jednoj tabeli, uradite ovaj korak jednom. Tabela arhive koju kreirate u ovom koraku će čuvati sve arhivirane zapise.
Da biste izbrisali staru tabelu arhive kada kreirate novu, umesto da uradite ovaj korak, možete da koristite upit za pravljenje tabele da biste kopirali podatke u tabelu arhive. Da biste to uradili, pređite na 2. korak.
Da biste koristili novu tabelu arhive svaki put kada arhivirate, ali da biste zadržali stare tabele arhive, pre nego što kreirate novu tabelu arhive, preimenujte staru tabelu arhive. Ako arhivirate na osnovu datuma, razmotrite imenovanje starih tabela arhive prema opsegu datuma koji one predstavljaju.
-
U oknu za navigaciju izaberite tabelu koja sadrži zapise za arhiviranje, pritisnite kombinaciju tastera CTRL+C, a zatim pritisnite kombinaciju tastera CTRL+V.
-
U polju Ime tabele izbrišite reči Kopiraj od i dodajte podvlaku i reč "arhiviraj" u postojeće ime tabele, a zatim kliknite na dugme U redu. Na primer, ako se originalna tabela zove Transakcije , tabela arhive se zove Transactions_archive.
-
U dijalogu Lepljenje tabele kao , u okviru Opcije lepljenja izaberite stavku Samo struktura.
2. korak: Create za dodavanje da biste kopirali podatke u tabelu arhive
-
Na kartici Kreiranje, u grupi Upiti kliknite na dugme Dizajn upita.
-
Dodajte tabelu sa zapisima koje želite da arhivirate.
-
U prozoru za dizajn upita kliknite dvaput na zvezdicu (*) u tabeli koju ste upravo dodali. Ime tabele i zvezdica pojavljuju se u prvoj koloni koordinatne mreže za dizajn upita.
Napomena: Zvezdica ukazuje na to da upit treba da sadrži sva polja iz tabele u rezultatu upita. Kada koristite zvezdicu, ako se polja dodaju ili uklone iz tabele, rezultat upita se prilagođava u skladu sa toga.
-
U prozoru za dizajn upita kliknite dvaput na polje koje želite da koristite da biste naveli uslov koji zapisi treba da ispunjavaju pre nego što ih arhivirate. Na primer, ako tabela Transakcije ima polje pod imenom "Prijavljeni datum" i želite da arhivirate sve zapise u kojima je taj datum stariji od godinu dana, kliknite dvaput na polje i ono se pojavljuje u sledećoj praznoj koloni koordinatne mreže za dizajn upita.
Ponovite ovaj korak ako želite da koristite kriterijume sa dodatnim poljima.
-
Koristite red Kriterijumi da biste naveli kriterijume za polja koja ste upravo dodali. Na primer, možete da navedete da datum prijavljenog mora da bude pre 1. januara 2019. pomoću izraza <#1/1/2019# u redu Kriterijumi.
Ako se vrednosti kriterijuma menjaju svaki put kada arhivirate, trebalo bi da podesite da upit traži unos. Da biste to uradili, koristite parametar u redu Kriterijumi tako da upit traži unos. Da biste koristili parametar, koristite izraz kao i obično, ali umesto navedene vrednosti koristite kratko pitanje okruženo uglastim zagradama. Na primer, izraz možete da koristite< [Transakcije arhiviranja dovršene pre:], ovako:
Dodatne informacije o korišćenju parametara potražite u članku Uvod u upite.
Možda ćete želeti da koristite i red ili da navedete alternativne uslove. Više informacija o korišćenju kriterijuma potražite u članku Primeri kriterijuma upita.
Savet: Ako koristite polje za datum da biste naveli kriterijume i želite da arhivirate sve zapise koji su stariji od trenutnog datuma, unesite<Date() u red Kriterijumi za polje datuma.
-
Uradite nešto od sledećeg:
Ako ste već kreirali tabelu arhive, koristite upit za dodavanje da biste dodali navedene zapise u tu tabelu:
-
Na kartici Dizajn, u grupi Tip upita kliknite na dugme Dodaj.
-
U dijalogu Dodavanje, u polju Ime tabele izaberite ime tabele arhive, a zatim kliknite na dugme U redu.
U koordinatnoj mreži za dizajn upita pojavljuje se red Dodaj u.
-
Opozovite izbor u redu Dodaj u za sva polja koja ste koristili za navođenje kriterijuma. (Samo zvezdica treba da ima vrednost za Dodaj u.)
Ako niste kreirali tabelu arhive, koristite upit za kreiranje tabele da biste kreirali tabelu arhive pomoću navedenih zapisa:
-
Na kartici Dizajn, u grupi Tip upita kliknite na dugme Pravljenje tabele.
-
U dijalogu Pravljenje tabele, u polju Ime tabele otkucajte ime tabele arhive, a zatim kliknite na dugme U redu.
-
-
Pritisnite kombinaciju tastera CTRL+S da biste sačuvali upit.
3. korak: Create upit za brisanje za uklanjanje podataka iz originalne tabele
-
Na kartici Kreiranje, u grupi Upiti kliknite na dugme Dizajn upita.
-
Dodajte tabelu sa zapisima koje želite da arhivirate.
-
U prozoru za dizajn upita kliknite dvaput na zvezdicu (*) u tabeli koju ste upravo dodali. Ime tabele i zvezdica pojavljuju se u prvoj koloni koordinatne mreže za dizajn upita.
-
U prozoru za dizajn upita kliknite dvaput na ista polja koja ste koristili da biste naveli uslov u upitu za dodavanje.
-
Koristite red Kriterijumi da biste naveli kriterijume za polja koja ste upravo dodali. Više informacija o korišćenju kriterijuma potražite u članku Primeri kriterijuma upita.
Važno: Ako je upit za dodavanje ili kreiranje tabele koristio parametar, uverite se da je to i upit za brisanje. Takođe zapamtite da unosite istu vrednost za oba upita. Ako unesete različite vrednosti parametara, možete da izgubite podatke. Da biste sprečili gubitak podataka, razmislite o korišćenju obrasca za prikupljanje vrednosti i načinu na koji upiti traže ulazne vrednosti od obrasca. Dodatne informacije potražite u članku Uvod u upite.
-
Na kartici Dizajn, u grupi Tip upita kliknite na dugme Izbriši.
Pojavljuje se red Brisanje u koordinatnoj mreži za dizajn upita.
-
Pritisnite kombinaciju tastera CTRL+S da biste sačuvali upit.
4. korak: Create makro za pokretanje upita za dodavanje i brisanje
-
Na kartici Kreiranje, u grupi Makroi i kôd kliknite na dugme Makro.
-
Kliknite na strelicu padajućeg menija pored stavke Dodaj novu radnju, a zatim izaberite stavku Otvori upit.
Pojavljuje se radnja OpenQuery i prikazuje svoje argumente.
-
U polju Ime upita izaberite upit (dodavanje ili kreiranje tabele) koji ste kreirali u 2. koraku.
-
Kliknite na strelicu padajućeg menija pored stavke Dodaj novu radnju, a zatim izaberite stavku Otvori upit.
Pojavljuje se radnja OpenQuery i prikazuje svoje argumente.
-
U polju Ime upita izaberite upit za brisanje koji ste kreirali u 3. koraku.
-
Pritisnite kombinaciju tastera CTRL+S da biste sačuvali makro.
Kada želite da arhivirate zapise, pokrenite makro.