A régi vagy inaktív rekordok rendszeres archiválásával rendszerezetten és kezelhetőként tarthatja Microsoft Access-adatbázisait. Archiválhatja egy adatbázis összes tábláját, adott tábláit vagy csak bizonyos rekordokat (például azokat, amelyek egy adott dátumnál régebbiek). Ez a témakör azt ismerteti, hogy miként archiválhatja három különböző lehetőséget az Access-adatbázisban lévő adatok archiválásához.
Tartalom
- Mikor érdemes megfontolni az archiválást?
- Táblázat rendszeres cseréje
- Az összes tábla rendszeres cseréje
- Rekordok rendszeres időközönként történő áthelyezése archív táblába
Mikor érdemes megfontolni az archiválást?
Ha a számítógépén lévő adatbázis olyan adatokat tartalmaz, amelyeket tervei szerint soha többé nem fog használni, de kéznél szeretné tartani ezeket az adatokat arra az esetre, ha később szüksége lenne rájuk, vagy ha meg szeretne felelni egy adatmegőrzési szabálynak, akkor az archiválás jó módszer az ilyen adatok megőrzésére. Az archiválást gyakran használják arra is, hogy adatokat tároljanak dátum típusú feltétel alapján, például egy hónap végén.
Az adatok archiválásának módjai
Az alábbi táblázatban megtalálja az adatok archiválási módjait, a módszer leírását, az egyes módszerek használatának indoklását, valamint a módszerrel kapcsolatos egyéb szempontokat.
| Módszer: | Leírás: | Akkor használja, ha... | Egyéb szempontok |
|---|---|---|---|
| Táblázat rendszeres cseréje | Rendszeres időközönként archív másolatot készít egy adott tábláról, és a táblát egy új, üres táblapéldánnyal helyettesíti. | A tábla összes rekordja megfelel az archiválási feltételeknek. PÉLDA: van egy táblája, amely a napi hőmérsékleti szélsőértékeket tartalmazza. Ebben az esetben minden évben archiválja a táblát, majd egy üres táblával folytatja az adatrögzítést. |
|
| Az összes tábla rendszeres cseréje | Rendszeres időközönként készítsen archív másolatot a háttéradatbázisról, majd cserélje le a háttéradatbázist egy új, üres példányra. Felosztott adatbázist igényel (egy adatbázis, amely az alábbiakból áll: az összes táblát tartalmazó háttéradatbázis-fájl, valamint az összes többi adatbázis-objektumot tartalmazó előtér-adatbázisfájl). | Az adatbázistáblák többségének minden rekordja megfelel az archiválási feltételeknek. PÉLDA: Az adatbázis különféle meteorológiai jellegű adatokat tartalmazó táblákból áll. Ebben az esetben minden évben archiválja az összes táblát. |
|
| Rekordok rendszeres időközönként történő áthelyezése archív táblába | Rendszeres időközönként futtat egy olyan lekérdezést, amely kiválasztja az archiválandó rekordokat, az adatokat egy archív táblához adja. Ön pedig egy lekérdezés futtatásával kijelöli és törli ugyanazokat a rekordokat (az eredeti táblából). | Ha a tábla bizonyos rekordjai megfelelnek az archiválási feltételeknek. PÉLDA: a könyvtári forgalmat (a kölcsönzéseket) kívánja archiválni, ha az adott könyvet már legalább egy éve nem kölcsönözték ki. |
Figyelmeztetés: Ha paramétereket kell használnia a lekérdezésekben, akkor a paraméterek kezeléséhez létre kell hoznia egy űrlapot. Ellenkező esetben az adatvesztés veszélyét kockáztatja. |
A hivatkozási integritás megkerülése
Ha az archiválni kívánt rekordok más táblákban található rekordokhoz kapcsolódnak, előfordulhat, hogy a kapcsolat megkerülésére lesz szükség. Ha az archiválni kívánt rekordok "gyermekrekordok" (vagyis az egy a többhöz kapcsolat "több" oldalához tartoznak), valószínűleg probléma nélkül archiválhatja azokat. Ha az archiválni kívánt rekordok "szülőrekordok" (vagyis egy egy a többhöz kapcsolat "egy" oldalához tartoznak), az archiválás során a kapcsolódó gyermekrekordok:
- Megakadályozhatják a "szülőrekordok" törlését. Ez akkor okozhat problémákat, ha a "szülőrekordokat" már hozzáfűzte az archív táblához.
- Vagy -
- "Árvákká" válnak, vagyis olyan rekordokká, amelyek nem létező "szülőrekordokhoz" tartoznak. Ez problémákat okozhat az "árvarekordokat" használó adatbázis adatintegritását és működőképességét illetően.
A hivatkozási integritás meghatározásához hajtsa végre az alábbi lépéseket:
Határozza meg, mely "gyermekrekordok" tartoznak az archiválni kívánt rekordokhoz. Ha például egy könyvtárban kikölcsönzött anyagokat tartalmazó rekordokat szeretne archiválni, először meg kell állapítania, hogy tartoznak-e nyitott tranzakciók azokhoz a rekordokhoz (az adott anyagokat kikölcsönözték, de nem hozták vissza).
Tegye a következők valamelyikét:
- Ha az összes "gyermekrekord" biztonságosan törölhető, győződjön meg arról, hogy a kapcsolat megőrzi a hivatkozási integritást kaszkádolt törlésekkel. Ez biztosítja, hogy az összes kapcsolódó "gyermekrekord" törlődni fog.
- Ha nem mindegyik "gyermekrekord" törölhető biztonságosan, érdemes megfontolni az adatbázis összes táblájának archiválását.
- Hozzon létre egy olyan lekérdezést, amely kijelöli azokat a "szülőrekordokat", amelyek nem rendelkeznek gyermekrekordokkal. Ezután a szülőtábla használata helyett használja az első lekérdezést archív lekérdezések létrehozásához (lásd a Rekordok rendszeres időközönként történő áthelyezése archív táblába című szakaszt).
Táblázat rendszeres cseréje
Ha a tábla összes adatát archiválni szeretné, rendszeres időközönként lecserélheti a táblát egy üres példányra.
Fontos
Ha az archivált tábla más táblákhoz kapcsolódik, a hivatkozási integritás megkerülésére lehet szükség.
A navigációs ablakban jelölje ki az archiválni kívánt táblákat, és nyomja le a CTRL+C, majd a CTRL+V billentyűkombinációt.
A Tábla beillesztése másként párbeszédpanel Beillesztés beállításai csoportjában jelölje be a Csak struktúra lehetőséget, majd kattintson az OK gombra.
Az Access a másolatot az eredeti tábla nevének másolataként nevezi el.
A navigációs ablakban kattintson a jobb gombbal az eredeti táblára, majd a helyi menü Átnevezés parancsára.
Adjon egy másik nevet a táblának, ezzel jelezve, hogy mit tartalmaz, például "DailyTemperatureExtremes_archive_2019".
A navigációs ablakban kattintson a jobb gombbal az üres példányra, majd a helyi menü Átnevezés parancsára. Nevezze át az eredeti tábla nevével.
Az összes tábla rendszeres cseréje
Ha feldarabolt adatbázist használ, rendszeres időközönként lecserélheti az összes táblát a háttéradatbázis üres példányra történő cseréjével.
Ehhez először készítse elő az üres másolatot. Ha nem változik az adatbázis terve, minden archiváláskor újra használhatja ezt az üres példányt. Az archiváláshoz egyszerűen nevezze át a meglévő háttéradatbázist (ezzel jelezve, hogy az egy archív adatbázis), és mentse az üres példányt új háttéradatbázisként.
A háttéradatbázis üres másolatának előkészítése
Először importálja a háttéradatbázis összes táblájához tartozó tábladefiníciókat.
- A Fájl lapon kattintson az Új elemre, válassza az Üres adatbázis lehetőséget, majd kattintson a Létrehozás gombra.
- Zárja be az 1. táblázatot.
- A Külső adatok lap Importálás & csatolás csoportjában kattintson az Access gombra.
- A Külső adatok átvétele – Access-adatbázis párbeszédpanelen jelölje be a Táblák, lekérdezések, űrlapok, jelentések, makrók és modulok importálása a jelenlegi adatbázisba jelölőnégyzetet, majd kattintson a Tallózás gombra.
- A Fájl megnyitása párbeszédpanelen jelölje ki a háttéradatbázist. Kattintson a Megnyitás gombra a Fájl megnyitása párbeszédpanel bezárásához, majd kattintson az OK gombra.
- Az Objektum importálása párbeszédpanelen kattintson a Beállítások gombra.
- A Táblák importálása csoportban válassza a Csak definíció lehetőséget.
- A Táblák lapon kattintson Az összes kijelölése, majd az OK és végül a Bezárás gombra.
Adatok hozzáadása az üres másolat keresési tábláihoz
Minden egyes keresési tábla esetében hajtsa végre a következő lépéseket:
- Hozzon létre csatolást a meglévő háttéradatbázis keresési táblájához.
- Hozzon létre egy hozzáfűző lekérdezést, amely az eredeti összes rekordját hozzáadja a másolathoz.
A háttéradatbázis cseréje üres példányra
Első lépésként nevezze át a meglévő háttéradatbázist, jelezve, hogy az már egy archív adatbázis. Ezután nyissa meg az üres példányt, és mentse az eredeti háttéradatbázis nevén.
- Kattintson a Fájl fülre, majd az Adatbázis mentése másként parancsra. Előfordulhat, hogy a rendszer az összes megnyitott objektum bezárására kéri; ha igen, kattintson az OK gombra. Megnyílik a Mentés másként párbeszédpanel.
- A Mentés másként párbeszédpanel tetején található Hely párbeszédpanelen győződjön meg arról, hogy a fájlt ugyanoda menti, mint az eredeti háttéradatbázist.
- A Fájlnév mezőbe írja be az eredeti háttéradatbázis nevét.
- A Fájl típusa mezőben válassza az Access-adatbázis (*.accdb) lehetőséget.
Rekordok rendszeres időközönként történő áthelyezése archív táblába
Ez egy négy lépésből álló folyamat, amelyben létre kell hozni egy üres másolatot az archiválni kívánt rekordokat tartalmazó táblából, létre kell hozni egy hozzáfűző lekérdezést az eredeti tábla rekordjainak archív táblába másolásához, létre kell hozni egy törlő lekérdezést az archivált rekordok eltávolításához az eredeti táblából, és végül létre kell hozni egy makrót mindkét lekérdezés futtatásához. Ez a látszólag összetett folyamat egyszerű lehet, ha az alábbi sorrendben követi a lépéseket:
1. lépés: Archív tábla létrehozása
2. lépés: Hozzáfűző lekérdezés létrehozása az adatok archív táblába másolásához
3. lépés: Törlő lekérdezés létrehozása az eredeti tábla adatainak eltávolításához
4. lépés: Makró létrehozása hozzáfűző és törlő lekérdezések futtatásához
1. lépés: Archív tábla létrehozása
Ha az összes archivált rekordot egy táblában szeretné megőrizni, hajtsa végre ezt a lépést egyszer. Az ebben a lépésben létrehozott archív tábla tárolja majd az összes archivált rekordot.
Ha törölni szeretné a régi archív táblát egy új tábla létrehozásakor, ahelyett, hogy ezt a lépést elvégezné, táblakészítő lekérdezéssel másolja az adatokat az archív táblába. Ehhez ugorjon a 2. lépésre.
Ha minden egyes archiváláskor új archív táblát szeretne használni, de a régi archív táblákat is meg szeretné őrizni, akkor új tábla létrehozása előtt nevezze át a régi archív táblát. Ha dátum szerint végzi az archiválást, érdemes a régi archív táblákat a bennük található adatok által felölelt időtartam alapján elnevezni.
- A navigációs ablakban jelölje ki az archiválni kívánt rekordokat tartalmazó táblát, és nyomja le a CTRL+C billentyűkombinációt, majd a CTRL+V billentyűkombinációt.
- A Táblanév mezőben törölje a Copy Of szót, és a tábla nevéhez adjon hozzá egy aláhúzásjelet, és illessze hozzá az "archív" szót, majd kattintson az OK gombra. Ha például az eredeti tábla neve Tranzakciók volt, az archív tábla neve Transactions_archive.
- A Tábla beillesztése másként párbeszédpanel Beillesztés beállításai csoportjában jelölje be a Csak struktúra lehetőséget.
2. lépés: Hozzáfűző lekérdezés létrehozása az adatok archív táblába másolásához
Kattintson a Létrehozás lap Lekérdezések csoportjának Lekérdezéstervező gombjára.
Vegye fel az archiválni kívánt rekordokat tartalmazó táblát.
A lekérdezéstervező ablakban kattintson duplán az imént hozzáadott táblában található csillag karakterre (*). A tábla neve és a csillag karakter megjelenik a lekérdezés tervezőrácsának első oszlopában.
Megjegyzés
A csillag karakter azt jelzi, hogy a lekérdezés a tábla összes mezőjét tartalmazni fogja a lekérdezés eredményében. Ha használja a csillag karaktert, mezők hozzáadásakor és eltávolításakor a lekérdezés eredménye ennek megfelelően fog változni.
A lekérdezéstervező ablakban kattintson duplán arra a mezőre, amelyet a rekordok archiválási feltételének meg szeretne adni. Ha például a Tranzakciók tábla rendelkezik egy Beadási dátum nevű mezővel, és archiválni szeretné az egy évnél régebbi rekordokat, kattintson duplán a mezőre, és az megjelenik a lekérdezés tervezőrácsának következő üres oszlopában.
További mezőfeltételek hozzáadásához ismételje meg ezt a lépést.A Feltétel sorral adhatja meg az imént hozzáadott mezők feltételeit. Például azt a feltételt használva, hogy a Beadási dátumnak korábbinak kell lennie, mint 2019. január 1. a Feltétel sorban található #1/1/2019# kifejezés< használatával.
Ha a feltételértékek minden archiváláskor változnak, érdemes beállítani a lekérdezést adatbevitel kérésére. Ehhez egy paramétert kell használni a Feltétel sorban úgy, hogy a lekérdezés kérje a bevitelt. Egy paraméter használatához a kifejezést ugyanúgy alkalmazza, ahogy máskor is tenné, de a megadott érték helyett egy szögletes zárójelek közé zárt rövid kérdést írjon be. Használhatja például az [Archívum tranzakciók elvégzése előtt:] kifejezést< a következőképpen:
A paraméterek használatáról további információt a Lekérdezések – Bevezetés című témakörben talál.
Alternatív feltételek megadásához is használhatja a vagy sort. A feltételek használatáról bővebben a Példák lekérdezésfeltételekre című témakörben olvashat.Tipp:
Ha dátummező használatával szeretne feltételt megadni, és az aktuális dátumnál régebbi rekordokat szeretné archiválni, írja be a Date() értéket< a dátummező Feltétel sorába.
Tegye a következők valamelyikét:
Ha már létrehozta az archív táblát, egy hozzáfűző lekérdezéssel vegye fel a megadott rekordokat a táblába:- A Tervezés lap Lekérdezés típusa csoportjában kattintson a Hozzáfűzés elemre.
- A Hozzáfűzés párbeszédpanel Tábla neve mezőjében jelölje ki az archív tábla nevét, majd kattintson az OK gombra.
A lekérdezés tervezőrácsában megjelenik a Hozzáfűzés sor. - Törölje a Hozzáfűzés sor értékét azokban a mezőkben, melyeket a feltétel megadásához használt. (Csak a csillag karakterhez tartozhat hozzáfűzési érték.)
Ha még nem hozta létre az archív táblát, táblakészítő lekérdezéssel hozza létre azt a megadott rekordok használatával: - A Tervezés lap Lekérdezés típusa csoportjában kattintson a Táblakészítő gombra.
- A Táblakészítő párbeszédpanel Tábla neve mezőjébe írja be az archív tábla nevét, majd kattintson az OK gombra.
A CTRL+S billentyűkombináció lenyomásával mentheti a lekérdezést.
3. lépés: Törlő lekérdezés létrehozása az eredeti tábla adatainak eltávolításához
Kattintson a Létrehozás lap Lekérdezések csoportjának Lekérdezéstervező gombjára.
Vegye fel az archiválni kívánt rekordokat tartalmazó táblát.
A lekérdezéstervező ablakban kattintson duplán az imént hozzáadott táblában található csillag karakterre (*). A tábla neve és a csillag karakter megjelenik a lekérdezés tervezőrácsának első oszlopában.
A lekérdezéstervező ablakban kattintson duplán azokra a mezőkre, melyeket a feltétel megadásához használt a hozzáfűző lekérdezésben.
A Feltétel sorral adhatja meg az imént hozzáadott mezők feltételeit. A feltételek használatáról bővebben a Példák lekérdezésfeltételekre című témakörben olvashat.
Fontos
Ha a táblakészítő vagy hozzáfűző lekérdezés paramétert használt, gondoskodjon arról, hogy a törlő lekérdezés is ezt tegye. Ne feledje, hogy ugyanazt az értéket kell megadnia mindkét lekérdezésben. Ha eltérő paraméterértékeket ad meg, adatvesztés léphet fel. Az adatvesztés megelőzése érdekében érdemes megfontolni űrlap használatát az értékek összegyűjtéséhez, és úgy beállítani, hogy a lekérdezések a bemeneti értékeket az űrlapról kérdezzék rá. További információt a Lekérdezések – Bevezetés című cikkben talál.
A Tervezés lap Lekérdezés típusa csoportjában kattintson a Törlés gombra.
Ekkor megjelenik a Törlés sor a lekérdezés tervezőrácsában.
A CTRL+S billentyűkombináció lenyomásával mentheti a lekérdezést.
4. lépés: Makró létrehozása hozzáfűző és törlő lekérdezések futtatásához
- A Létrehozás lap Makrók és kódok csoportjában kattintson a Makró gombra.
- Kattintson az Új művelet hozzáadása gomb lefelé mutató nyilára, majd az LekérdezésMegnyitása parancsra.
Ekkor megjelenik a LekérdezésMegnyitása művelet, és megjeleníti annak argumentumait. - A Lekérdezés neve mezőben jelölje ki a 2. lépésben létrehozott (hozzáfűző vagy táblakészítő) lekérdezést.
- Kattintson az Új művelet hozzáadása gomb lefelé mutató nyilára, majd az LekérdezésMegnyitása parancsra.
Ekkor megjelenik a LekérdezésMegnyitása művelet, és megjeleníti annak argumentumait. - A Lekérdezés neve mezőben jelölje ki a 3. lépésben létrehozott törlő lekérdezést.
- Mentse a makrót a CTRL+S billentyűkombináció lenyomásával.
A rekordok archiválásához futtassa a makrót.