Ha gyorsan szeretne sok adatot törölni, vagy rendszeresen törölni egy adatkészletet egy asztali Access-adatbázisban, a törlési vagy frissítési lekérdezés hasznos lehet, mert a lekérdezések lehetővé teszik az adatok gyors megkereséséhez és törléséhez szükséges feltételek megadását. A lekérdezések használata időbélyeg is lehet, mivel a mentett lekérdezések újra felhasználhatók.
Megjegyzés: Mielőtt bármilyen adatot törölne vagy törlő lekérdezést futtatna, gondoskodjon az asztali Access-adatbázis biztonsági mentéséről.
Ha csak néhány rekordot szeretne törölni, nincs szükség lekérdezésre. Nyissa meg a táblát Adatlap nézetben, jelölje ki a törölni kívánt mezőket (oszlopokat) vagy rekordokat (sorokat), majd nyomja le a DELETE billentyűt.
Fontos: A cikkben szereplő információk csak asztali adatbázisokhoz használhatók. Az Access-webappokban nem használhat törlési vagy frissítési lekérdezéseket.
A témakör tartalma
Lekérdezéstípus kiválasztása
Az adatbázis adatainak törléséhez frissítő lekérdezést vagy törlő lekérdezést is használhat. Válasszon ki egy lekérdezést az alábbi táblázat részletei alapján:
Lekérdezés típusa |
Mikor használatos |
Eredmények |
---|---|---|
Törlő lekérdezés használata |
Ha teljes rekordokat (sorokat) szeretne egyszerre eltávolítani egy táblából vagy két kapcsolódó táblából. Megjegyzés: Ha a rekordok egy egy-a-többhöz kapcsolat "egy" oldalán találhatók, előfordulhat, hogy módosítania kell a kapcsolatot a törlő lekérdezés futtatása előtt. Lásd az adatok kapcsolódó táblákból való törléséről szóló szakaszt. |
A lekérdezések törlése eltávolítja az egyes mezőkben lévő összes adatot, beleértve a rekord egyedivé tevő kulcsértékét is |
Frissítő lekérdezés használata |
Egyéni mezőértékek törlése egy táblából. |
Egyszerűbbé teszi az értékek törlését, ha a meglévő értékeket null értékre (azaz adatok nélkül) vagy nulla hosszúságú karakterláncra (dupla idézőjelpárra) frissíti, szóköz nélkül. |
Az adatok lekérdezéssel való törlése előtt ellenőrizendő teendők
-
Győződjön meg arról, hogy a fájl nem írásvédett fájl:
-
Kattintson a jobb gombbal a Start gombra, és válassza a Windows Intéző megnyitása parancsot.
-
Kattintson a jobb gombbal az adatbázisfájlra, és válassza a Tulajdonságok parancsot.
-
Ellenőrizze, hogy az Írásvédett attribútum van-e kiválasztva.
-
-
Ellenőrizze, hogy rendelkezik-e a rekordok adatbázisból való törléséhez szükséges engedélyekkel. Ha nem biztos benne, forduljon a rendszergazdához vagy az adatbázis-tervezőhez.
-
Győződjön meg arról, hogy engedélyezte a tartalmat az adatbázisban. Alapértelmezés szerint az Access letiltja az összes műveleti lekérdezést (törlési, frissítési és tábla-készítő lekérdezéseket), kivéve, ha először megbízik az adatbázisban. Az adatbázisok megbízhatónak nyilvánításával kapcsolatos információkért lásd: A letiltott mód letiltása a lekérdezések blokkolásának megakadályozásában.
-
Kérje meg az adatbázis többi felhasználóját, hogy zárja be a törölni kívánt adatokat használó összes táblát, űrlapot, lekérdezést és jelentést. Ez segít elkerülni a zárolási szabálysértéseket.
-
A rekordok szerkesztése vagy törlése előtt érdemes biztonsági másolatot készíteni az adatbázisról arra az esetre, ha vissza szeretné fordítani a módosításokat.
Tipp: Ha nagyszámú felhasználó csatlakozik az adatbázishoz, előfordulhat, hogy be kell zárnia az adatbázist, majd újra meg kell nyitnia Kizárólagos módban.
Adatbázis megnyitása kizárólagos módban
-
Kattintson a Fájl fülre > Megnyitás gombra.
-
Tallózással jelölje ki az adatbázist, kattintson a Megnyitás gomb melletti nyílra, majd a Kizárólagos megnyitás parancsra.
Az adatbázis biztonsági mentése
-
Kattintson a Fájl fülre, és mutasson a Mentés másként parancsra.
-
Kattintson az Adatbázis mentése másként, majd az Adatbázis biztonsági mentése elemre. Az Access bezárja az eredeti fájlt, létrehozza a biztonsági másolatot, majd újra megnyitja az eredeti fájlt.
-
Kattintson a Mentés másként gombra , adja meg a biztonsági másolat nevét és helyét, majd kattintson a Mentés gombra.
Megjegyzés: Ha írásvédett vagy az Access előző verziójában létrehozott adatbázist használ, előfordulhat, hogy egy üzenet arról tájékoztatja, hogy nem lehet biztonsági másolatot készíteni az adatbázisról.
Ha vissza szeretné állítani valamelyik biztonsági másolatot, zárja be és nevezze át az eredeti fájlt, hogy a biztonsági másolat az eredeti verzió nevét használhassa. Rendelje hozzá az eredeti verzió nevét a biztonsági másolathoz, majd nyissa meg az átnevezett biztonsági másolatot az Accessben.
Törlő lekérdezés használata
Törlő lekérdezés létrehozásához kattintson a Létrehozás lap Lekérdezések csoportjában a Lekérdezéstervező elemre. Kattintson duplán az egyes táblákra, amelyekből rekordokat szeretne törölni, majd kattintson a Bezárás gombra.
A tábla ablakként jelenik meg a lekérdezéstervező rács felső részén. A mezők listájában kattintson duplán a csillagra (*), ha a tábla összes mezőjét hozzá szeretné adni a tervezőrácshoz.
Adott feltételek használata egy törlő lekérdezésben
Fontos: Feltételek használatával csak a törölni kívánt rekordokat adja vissza. Ellenkező esetben a törlő lekérdezés eltávolítja a tábla összes rekordját.
Kattintson duplán arra a mezőre, amelyet törlési feltételként szeretne megadni, írja be az egyik feltételt a lekérdezéstervező Feltétel sorába, majd törölje az egyes feltételmezők Megjelenítés jelölőnégyzetének jelölését.
Példa arra, hogy mikor érdemes ezt a lehetőséget használni: Tegyük fel, hogy el szeretné távolítani egy ügyfél összes függőben lévő rendelését. Ha csak ezeket a rekordokat szeretné megtalálni, adja hozzá a Vevőazonosító és a Rendelés dátuma mezőt a lekérdezés tervezőrácsához, majd adja meg az ügyfél azonosítószámát, valamint azt a dátumot, amikor az ügyfél rendelései érvénytelenek lettek.
-
Kattintson a Tervezés lapon a Nézet > Adatlap nézet elemre.
-
Ellenőrizze, hogy a lekérdezés visszaadja-e a törölni kívánt rekordokat, majd a CTRL+S billentyűkombinációt lenyomva mentse a lekérdezést.
-
A lekérdezés futtatásához kattintson duplán a lekérdezésre a navigációs ablakban.
A frissítő lekérdezés használata
Megjegyzés: Access-webappokban nem használhatja a lekérdezésfrissítési lehetőséget.
Ez a szakasz azt ismerteti, hogyan törölhet egyes mezőket táblákból frissítő lekérdezéssel. Ne feledje, hogy ha egy frissítő lekérdezést futtat az adatok törléséhez, a megadott feltételektől függően a meglévő értékeket NULL értékűre vagy nulla hosszúságú sztringre (dupla idézőjelpárra) módosítja a megadott feltételektől függően.
-
Kattintson a Létrehozás fülre, majd a Lekérdezések csoportban kattintson a Lekérdezéstervező elemre.
-
Jelölje ki azt a táblát, amely a törölni kívánt adatokat tartalmazza (ha a tábla kapcsolatban áll, jelölje ki a táblát a kapcsolat "egy" oldalán), kattintson a Hozzáadás, majd a Bezárás gombra.
A tábla ablakként jelenik meg a lekérdezéstervező rács felső részén. Az ablakban a kijelölt tábla összes mezője látható.
-
Kattintson duplán a csillagra (*) a tábla összes mezőjének a tervezőrácshoz való hozzáadásához. Az összes táblamező hozzáadásával a törlő lekérdezés teljes rekordokat (sorokat) távolíthat el a táblából.
Igény szerint a tervező Feltétel sorában megadhatja egy vagy több mező feltételeit, majd törölheti az egyes feltételmezők Megjelenítés jelölőnégyzetének jelölését. A feltételek használatával kapcsolatos további információkért tekintse meg a Lekérdezések kiválasztása tábla mintafeltételei című táblázatot.
Megjegyzés: Feltételek használatával csak a módosítani kívánt rekordokat adja vissza. Ellenkező esetben a frissítő lekérdezés null értékűre állítja a lekérdezés egyes mezőinek minden rekordját.
-
A Tervezés lap Eredmények csoportjában kattintson a Nézet gombra, majd válassza az Adatlap nézet lehetőséget.
-
Ellenőrizze, hogy a lekérdezés visszaadja-e azokat a rekordokat, amelyeket NULL értékre vagy nulla hosszúságú sztringre szeretne állítani (dupla idézőjelek párja, amelyek között nincs szóköz (").
-
Szükség esetén ismételje meg a 3–5. lépést, és módosítsa a mezőket vagy feltételeket, amíg a lekérdezés csak a törölni kívánt adatokat adja vissza, majd nyomja le a CTRL+S billentyűkombinációt a lekérdezés mentéséhez.
-
A lekérdezés futtatásához kattintson duplán a lekérdezésre a navigációs ablakban.
További információ
A kapcsolat szerkesztése
Csak akkor kövesse ezeket a lépéseket, ha törölnie kell egy kapcsolat "egy" és "több" oldalán lévő adatokat.
-
Kattintson az Adatbáziseszközök lap Kapcsolatok csoportjában a Kapcsolatok gombra.
-
Kattintson a jobb gombbal a törlési műveletben részt vevő táblákat összekötő kapcsolatra (a vonalra), majd kattintson a helyi menü Kapcsolat szerkesztése parancsára.
-
A Kapcsolatok szerkesztése párbeszédpanelen győződjön meg arról, hogy a Hivatkozási integritás megőrzése jelölőnégyzet be van jelölve.
-
Jelölje be a Kapcsolt rekordok kaszkádolt törlése jelölőnégyzetet.
Megjegyzés: Amíg ismét le nem tiltja ezt a tulajdonságot, a kapcsolat "egy" oldalán lévő rekord törlésével a kapcsolat "több" oldalán lévő összes kapcsolódó rekord törlődik.
-
Kattintson az OK gombra, zárja be a Kapcsolatok panelt, majd folytassa a következő lépésekkel.
Kapcsolat törlése
-
Ha még nem tette meg, nyissa meg a Kapcsolatok panelt .
-
Kattintson az Adatbáziseszközök lap Kapcsolatok csoportjában a Kapcsolatok gombra.
Jegyezze fel a kapcsolatban érintett mezőket, hogy az adatok törlése után visszaállíthassa a kapcsolatot.
-
Kattintson a jobb gombbal a törlési műveletben érintett táblákat összekötő kapcsolatra (a vonalra), majd kattintson a helyi menü Törlés parancsára.
Megjegyzés: A kapcsolat visszaállításához nyissa meg az előző lépéseket a Kapcsolatok panel megnyitásához, majd húzza az elsődleges kulcs mezőjét az "egy" táblából, és helyezze a "több" tábla idegenkulcs-mezőjére. Megjelenik a Kapcsolat szerkesztése párbeszédpanel. Ha a régi kapcsolat kényszerítette a hivatkozási integritást, válassza a Hivatkozási integritás megőrzése lehetőséget, majd kattintson a Létrehozás gombra. Ellenkező esetben kattintson a Létrehozás gombra.
Mintafeltételek választó lekérdezésekhez
Az alábbi táblázat néhány mintafeltételt sorol fel, amelyeket akkor használhat a választó lekérdezésekben, ha csak a törölni kívánt adatokat szeretné törölni. Néhány példa helyettesítő karaktereket használ.
Feltétel |
Hatás |
---|---|
> 234 |
Minden 234-nél nagyobb számot visszaad. A 234-nél kisebb számok megkeresésére használja a < 234 kifejezést. |
>= "Cajhen" |
A Koczka névtől kezdődően az ábécé végéig minden rekordot visszaad. |
Between #2/2/2010# And #12/1/2010# |
A 2010. február 2. és 2010. december 1. közötti dátumokat adja vissza (ANSI-89). Ha az adatbázis ANSI-92 helyettesítő karaktereket használ, használjon szimpla idézőjeleket (') a kettős kereszt (#) helyett. Példa: 2010. 02. 02. és 2010. 12. 01. között. |
Not "Németország" |
Minden olyan rekordot megkeres, amelynek tartalma nem egyezik meg pontosan a „Németország” karaktersorozattal. A feltételkifejezés olyan rekordokat ad vissza, amelyek a „Németország” karakterlánc mellett további karaktereket is tartalmaznak, például: „Németország (Euró)” vagy „Európa (Németország)” . |
Not "T*" |
A nem T-vel kezdődő rekordokat keresi meg. Ha az adatbázis ANSI-92 szabványú helyettesítő karakterekre van beállítva, százalékjelet (%) használjon a csillag (*) helyett. |
Not "*t" |
Minden olyan rekord megkeresése, amely nem t-re végződik. Ha az adatbázis ANSI-92 helyettesítő karakterekre van beállítva, a csillag (*) helyett használjon százalékjelet (%). |
In(Kanada,EK) |
A listában megkeres minden olyan rekordot, amelyben szerepel a Kanada vagy az EK szó. |
Like "[A-D]*" |
A Szöveg mezőben megkeresi az A–D betűvel kezdődő összes rekordot. Ha az adatbázis ANSI-92 helyettesítő karakterkészletet használ, a csillag (*) helyett használja a százalékjelet (%). |
Like "*ar*" |
Azokat a rekordokat keresi meg, amelyek tartalmazzák az „ar\rdblquote betűsorozatot. Ha az adatbázis ANSI-92 helyettesítő karakterekre van beállítva, a csillag (*) helyett használjon százalékjeleket (%). |
Like "Bobvos Endr?" |
Megkeresi azokat a rekordokat, amelyek a „Budai” névvel kezdődnek, és tartalmaznak egy ötbetűs második karakterláncot, amelynek első négy betűje „Csab”, utolsó betűje pedig ismeretlen. Ha az adatbázis ANSI-92 helyettesítő karakterkészletet használ, a kérdőjel (?) helyett használja az aláhúzásjelet (_). |
#2/2/2010# |
Megkeresi a 2010. február 2-i összes rekordot. Ha az adatbázis ANSI-92 helyettesítő karakterkészletet használ, a dátumot kettős keresztjelek ('2010.02.02') helyett szimpla idézőjelek közé kell tenni. |
< Date( )- 30 |
A Date függvényt használja a 30 napnál régebbi dátumok visszaadására. |
Date() |
A Date függvényt használja a mai dátumot tartalmazó rekordok visszaadására. |
Between Date( ) And DateAdd("M", 3, Date( )) |
A Date és a DateAdd függvény használatával visszaadja a mai dátum és a mai dátumtól számított három hónap közötti összes rekordot. |
Is Null |
Azokat a rekordokat adja vissza, amelyek null (üres vagy meghatározatlan) értékeket tartalmaznak. |
Is Not Null |
Visszaadja az összes olyan rekordot, amely bármilyen értéket tartalmaz (amelyek nem null értékűek). |
"" |
Az összes olyan rekordot visszaadja, amely nulla hosszúságú karakterláncot tartalmaz. Nulla hosszúságú sztringeket akkor használ, ha értéket kell hozzáadnia egy kötelező mezőhöz, de még nem tudja, hogy mi a tényleges érték. Előfordulhat például, hogy egy mezőhöz faxszámra van szükség, de előfordulhat, hogy néhány ügyfél nem rendelkezik faxgéppel. Ebben az esetben ahelyett, hogy számot ad meg, dupla idézőjeleket kell megadnia szóköz nélkül ("). |
Hibaelhárítási tanácsok
Miért jelenik meg ez a hibaüzenet, és hogyan háríthatom el?
Ha több tábla használatával hoz létre törlő lekérdezést, és a lekérdezés Egyedi rekordok tulajdonsága Nem értékre van állítva, az Access megjeleníti a hibaüzenetet; Nem sikerült törölni a megadott táblákból a lekérdezés futtatásakor.
A hiba elhárításához állítsa a lekérdezés Egyedi rekordok tulajdonságát Igen értékre.
-
Nyissa meg a törlő lekérdezést Tervező nézetben.
-
Ha nem nyílik meg a lekérdezés tulajdonságlapja, akkor nyissa meg az F4 billentyű lenyomásával.
-
A lekérdezéstervezőre kattintva jelenítse meg a lekérdezés tulajdonságait (a mezők tulajdonságai helyett).
-
Keresse meg a lekérdezés tulajdonságlapján az Egyedi rekordok tulajdonságot, majd állítsa az Igen értékre.
Annak megakadályozása, hogy a korlátozott üzemmód letiltsa a lekérdezést
Alapértelmezés szerint, ha olyan asztali adatbázist nyit meg, amelyet nem megbízhatóként választott, vagy amely nem megbízható helyen található, az Access letiltja az összes műveleti lekérdezés futtatását.
Ha megpróbál futtatni egy módosító lekérdezést, és látszólag nem történik semmi, ellenőrizze, hogy az Access állapotsorában látható-e az alábbi üzenet:
Ez a művelet vagy esemény a korlátozott üzemmód miatt le van tiltva.
Amikor megjelenik ez az üzenet, a következő lépésekkel engedélyezheti a letiltott tartalmat:
-
A Biztonsági figyelmeztetés üzenetsávon kattintson a Tartalom engedélyezése elemre, és futtassa újra a lekérdezést.