Odstranění dat z databáze aplikace Access pomocí dotazu

Poznámka:  Snažíme se pro vás co nejrychleji zajistit aktuální obsah nápovědy ve vašem jazyce. Tato stránka byla přeložena automaticky a může obsahovat gramatické chyby nebo nepřesnosti. Naším cílem je to, aby pro vás byl její obsah užitečný. Mohli byste nám prosím dát ve spodní části této stránky vědět, jestli vám informace v článku pomohly? Pokud byste se rádi podívali na jeho anglickou verzi, najdete ji tady .

Pokud chcete rychle odstranit velké objemy dat nebo pravidelně provádí operace stejným delete, zvažte použití dotazu. Dotaz můžete Ujistěte se, že jste odstraňujete správná data a lze uložit a potom snadno opakovat.

Poznámka: Chcete-li odebrat malým počtem poštovních záznamy – množství, kdykoli odstranit ručně, otevřete tabulku v zobrazení Datový list, vyberte řádky, které chcete odstranit nebo pole a stiskněte klávesu DELETE.

Důležité informace: Ujistěte se, jestli máte záložní kopii databáze před odstraněním dat.

V tomto článku

Volba typu dotazu podle data, která chcete odstranit

Vytvoření a použití odstraňovacího dotazu

Vytvoření a použití aktualizačního dotazu

Odstranění dat ze souvisejících tabulek

Ukázková kritéria pro výběrové dotazy

Další informace

Volba typu dotazu podle data, která chcete odstranit

Máte možnost používat aktualizační dotaz nebo odstraňovacího dotazu v závislosti na typu odstranění, které potřebujete provést.

Odstraňovací dotaz

Odebrání celých záznamů (řádků) z tabulky nebo ze dvou souvisejících tabulek v jednom kroku pomocí odstraňovacího dotazu. Odstraňovací dotazy odebírají všechna data všech polí včetně hodnoty klíče, díky níž je záznam jedinečný.

Poznámka: Pokud záznamy, které chcete odstranit umístěny na straně "1"-n relace, můžete zkusit změnit vztah před spuštěním odstraňovacího dotazu. Naleznete v části odstranění dat ze souvisejících tabulek v tomto článku.

Aktualizační dotaz

Použití aktualizačního dotazu k odstranění jednotlivých hodnot polí z tabulky, aktualizační dotaz umožňuje odstranit hodnoty aktualizací existujících hodnot na hodnotu null (to znamená žádná data) nebo řetězec nulové délky (dvojice uvozovek bez mezer mezi nimi).

Začátek stránky

Co můžete ověřit před použitím dotazu k odstranění dat

  • Zajistěte, aby byl soubor databáze není určen jen pro čtení. Postup, v programu Průzkumník Windows, klikněte pravým tlačítkem myši soubor databáze a klikněte na Vlastnosti.

  • Ověřte, zda máte nezbytná oprávnění odstraňovat záznamy z databáze. Pokud si nejste jistí, obraťte se na správce systému nebo návrháře databáze.

  • Ujistěte se, že jste povolili obsah v databázi. Ve výchozím nastavení bude Access blokovat všechny akční dotazy (dotazy odstranit, aktualizace nebo vytvářecích) Pokud databázi nejdřív důvěryhodnou. Informace o důvěryhodnosti databáze najdete v tématu Ukončení režimu vypnutí blokování dotazů dál v tomto článku.

  • Požádejte všechny uživatele databáze, aby zavřeli všechny tabulky, formuláře, dotazy a sestavy používající data, která chcete odstranit. Díky tomu nedojde k potížím s uzamknutými záznamy.

  • Než upravit nebo odstranit záznamy, zálohujte databázi. Nejde vrátit zpátky operacích, které jsou prováděné odstranit a aktualizujte dotazy, aby vytvoření záložní kopie zaručuje, že bude vždy vrátit změny.

Tip: Pokud připojení k databázi připojuje mnoho uživatelů, můžete zkusit databázi zavřít a znovu ji v výhradním režimu.

Otevření databáze ve výhradním režimu

  1. Klikněte na kartu Soubor a pak na tlačítko Otevřít.

  2. Vyhledejte a přesunutím ukazatele myši vyberte databázi, klikněte na šipku u tlačítka Otevřít a potom na položku Výhradní přístup.

    Otevření souboru ve výhradním režimu

Zálohování databáze

  1. Klikněte kartu soubor, přejděte na příkaz Uložit a publikovat a pak ve skupinovém rámečku Uložit databázi jako, klikněte na Zálohovat databázi.Access zavře původní soubor vytvoří zálohu a otevře původní soubor.

  2. V dialogovém okně Uložit jako zadejte název a umístění záložní kopie a klepněte na tlačítko Uložit.

Chcete-li se vrátit k záloze, zavřete původní soubor a přejmenujte jej tak, aby záložní kopie mohla používat název původní verze. Přiřaďte název původní verze záložní kopii a otevřete přejmenovanou záložní kopii v aplikaci Access.

Vytvoření a použití odstraňovacího dotazu

Postup v této části popisuje vytvoření a použití odstraňovacího dotazu k odstranění celých záznamů z tabulky:

  1. Na karta vytvořit, skupině dotazy klikněte na Návrh dotazu.

Zobrazí se dialogové okno Zobrazit tabulku.

  1. Poklikejte na každou tabulku, ze které chcete odstranit záznamy a potom klikněte na Zavřít.

Tabulka se zobrazí v podobě okna v horní části návrhové mřížky dotazu. Okno obsahuje seznam všech polí ve vybrané tabulce.

  1. Poklepáním na hvězdičku (*) přidejte všechna pole v tabulce do návrhové mřížky.

Pokud chcete, poklikejte na pole, který chcete použít určit kritéria pro odstranění, zadejte jedno nebo více kritérií ve řádku kritérií návrháři a potom zrušte zaškrtnutí políčka zobrazení zaškrtněte políčko u každého pole kritérií.

Předpokládejme například, že zákazníka přejde z firmy a budete muset uživateli odebrat všechna pole Čekání na objednávky pro zákazníka. Najít jenom ty záznamy, přidejte pole ID zákazníka a datum obj do návrhové mřížky a zadejte číslo ID zákazníka, který je odhlášení z firmy a podle kterého se jeho objednávkách neplatné datum.

Důležité informace: V odstraňovacím dotazu můžete použít kritéria, která slouží k vrácení pouze těch záznamů, které chcete odstranit. Pokud kritéria nezadáte, odstraňovací dotaz odebere každý záznam v tabulce.

  1. Na kartě Návrh ve skupině výsledky klikněte na kartu zobrazení a potom klikněte na Zobrazení Datový list.

  2. Ověřte, zda dotaz vrací záznamy, které chcete odstranit, a stisknutím kombinace kláves CTRL+S dotaz uložte.

  3. Chcete-li dotaz spustit, poklikejte na něj v navigačním podokně.

Začátek stránky

Vytvoření a použití aktualizačního dotazu

Postup v této části popisují, jak používat aktualizační dotaz k odstranění jednotlivých polí z tabulek na straně "n"-n relace. Můžete taky tímto postupem odstranit data z tabulek, které nejsou spojeny s jinými daty. Mějte na paměti, že spuštění aktualizačního dotazu k odstranění dat dojde ke změně existujících hodnot na hodnotu NULL nebo řetězce nulové délky (dvojice uvozovek bez mezer mezi), v závislosti na vámi zadaných kritérií.

  1. Na karta vytvořit, skupině dotazy klikněte na Návrh dotazu.

Zobrazí se dialogové okno Zobrazit tabulku.

  1. Vyberte tabulku obsahující data, který chcete odstranit (pokud jsou v relaci tabulky, vybrat tabulku na straně "1" vztahu), klikněte na Přidat a potom klikněte na Zavřít.

Tabulka se zobrazí v podobě okna v horní části návrhové mřížky dotazu. Okno obsahuje seznam všech polí ve vybrané tabulce.

  1. Dvojitým kliknutím na hvězdičku (*) přidejte všechna pole v tabulce do návrhové mřížky. Přidání všech polí tabulky dovoluje odstraňovacímu dotazu odebrat celé záznamy (řádky) z tabulky.

    V případě potřeby můžete zadat kritéria pro jeden nebo více polí v řádku kritérií návrháři a potom zrušte zaškrtnutí políčka zobrazení zaškrtněte políčko u každého pole kritérií. Další informace o používání kritérií najdete v tabulce Ukázková kritéria pro výběrové dotazy .

Poznámka: V aktualizačním dotazu můžete použít kritéria, která slouží k vrácení pouze těch záznamů, které chcete změnit. Pokud kritéria nezadáte, aktualizační dotaz nastaví na hodnotu NULL každý záznam v každém z polí v dotazu.

  1. Na kartě Návrh klepněte ve skupině Výsledky na položku Zobrazení a potom na položku Zobrazení datového listu.

  2. Ověřte, zda dotaz vrací záznamy, které chcete nastavit na hodnotu NULL nebo řetězce nulové délky (dvojice uvozovek bez mezer mezi nimi ("").

  3. Podle potřeby opakujte kroky 3 až 5 a měňte pole nebo kritéria, dokud dotaz nevrací pouze data, která chcete odstranit, potom stisknutím kombinace kláves CTRL+S dotaz uložte.

  4. Chcete-li dotaz spustit, poklikejte na něj v navigačním podokně.

Začátek stránky

Odstranění dat ze souvisejících tabulek

Pokud chcete odstranit data z několika souvisejících tabulek, je třeba povolit Referenční integrita a možnosti Kaskádové odstranění souvisejících záznamů u konkrétních vztahů. Díky dotazu odstranit data z tabulek na "jeden" a "n" strany relace. Příprava odstranění souvisejících dat vyžaduje ověření z následujících akcí:

  • Zjistěte, které záznamy se v relaci vyskytují na straně 1 a které na straně N.

  • Pokud potřebujete odstranit záznamy na straně 1 relace a související záznamy na straně N, povolte sadu pravidel označovanou jako referenční integrita a odstraňovaní souvisejících polí v kaskádě. Referenční integritě a postupu provádění obou úloh jsou věnovány informace uvedené v této části.

  • Pokud potřebujete odstranit záznamy pouze na straně 1 relace, odstraňte nejdříve danou relaci a potom odstraňte data.

    – nebo –

Pokud potřebujete odebrat pouze data na straně N relace, můžete vytvořit a spustit odstraňovací dotaz, aniž byste museli relaci měnit.

Určení relací

Chcete-li zjistit, záznamů, které se nacházejí na "jeden" a "n" strana relace:

  • V klikněte na kartě Databázové nástroje ve skupině relacerelace.

Kartu vztahy zobrazí se všechny tabulky v databázi a také vztahy mezi jednotlivými tabulkami a každá tabulka. Každá relace je znázorněna jako čára spojující tabulky pole.

Na následujícím obrázku vidíte typické relace. Většina, ne-li všechny vztahy v databázi má "jedné" straně a strana "n". Diagram vztahů označuje straně "1" numerický mapou (1 ) a "n" strana symbolem ().

Relace mezi dvěma tabulkami

Platí pravidlo, že při odstranění záznamů na straně 1 relace dojde k odstranění také všech souvisejících záznamů na straně N. Jestliže však odstraníte záznamy na straně N relace, nedojde zpravidla k odstranění záznamů na straně 1.

Ve výchozím nastavení také aplikace Access vynutí sadu pravidel označovanou jako referenční integrita. Tato pravidla zajišťují, že budou cizí klíče v databázi obsahovat správné hodnoty. Cizí klíč je sloupec, jehož hodnoty odpovídají hodnotám ve sloupci s primárním klíčem jiné tabulky.

Úprava relace

Podle těchto kroků postupujte pouze v případě, že potřebujete odstranit data na stranách 1 a N relace.

  1. Na kartě Databázové nástroje, skupina vztahy na, klikněte na relace.

  2. Klikněte pravým tlačítkem myši na relaci (čáru) spojující tabulky zahrnuté do operace odstraňování a potom klikněte na Upravit relaci v místní nabídce.

Zobrazí se dialogové okno Upravit relace.

  1. Zkontrolujte, že je je zaškrtnuto políčko Zajistit referenční integritu.

  2. Vyberte zaškrtněte políčko Kaskádové odstranění souvisejících záznamů.

Poznámka: Pokud tuto vlastnost znovu nezakážete, dojde při odstranění záznamu na straně 1 relace k odstranění všech souvisejících záznamů na straně N relace.

  1. Klikněte na OK, zavřete podokno relace a pak přejděte na další skupině kroků.

Odstranění relace

  1. Pokud jste tak dosud neučinili, otevřete podokno relace.

  2. Na kartě Databázové nástroje, skupina vztahy na, klikněte na relace.

Poznamenejte si pole zahrnutá v relaci pro případ, že byste chtěli obnovit relaci po odstranění dat.

  1. Klikněte pravým tlačítkem myši na relaci (čáru) spojující tabulky zahrnuté do operace odstraňování a potom klikněte na Odstranit v místní nabídce.

Poznámka: K obnovit relaci, postupujte podle předchozích kroků můžete také otevřít podokno relace a pak přetáhněte pole primárního klíče z "je" tabulky a vložte do pole cizího klíče tabulky "n". Zobrazí se dialogové okno Upravit relace. Pokud původní relace vynucení referenční integrity vyberte Referenční integritu a potom klikněte na vytvořit. Jinak, stačí kliknout vytvořit.

Začátek stránky

Ukázková kritéria pro výběrové dotazy

V následující tabulce je uveden seznam některých ukázkových kritérií, jejichž použitím ve výběrových dotazech můžete zajistit odstranění pouze takových dat, která chcete skutečně odstranit. V některých příkladech jsou použity zástupné znaky.

Kritéria

Výsledek

> 234

Vrátí všechna čísla větší než 234. Chcete-li nalézt všechna čísla menší než 234, zadejte < 234.

>= "Dryml"

Vrátí všechny záznamy od Novák až do konce abecedy.

Between #2.2.2010# And #1.12.2010#

Vrátí data od 2. února 2010 do 1. prosince 2010 (ANSI-89). Pokud databáze používá zástupné znaky standardu ANSI-92, použijte jednoduché uvozovky (') namísto znaků křížku (#). Například: Between '2.2.2010' And '1.12.2010'.

Not "Německo"

Vyhledá všechny záznamy, ve kterých obsah pole není „Německo“. Toto kritérium vrátí záznamy, které kromě textu „Německo“ obsahuje ještě další znaky, například „Německo (euro)“ nebo „Evropa (Německo)“.

Not "T*"

Vyhledá všechny záznamy s výjimkou těch, které začínají písmenem T. Pokud databáze používá sadu zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

Not "*t"

Vyhledá všechny záznamy, které nekončí písmenem t. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

In(Kanada,VB)

V seznamu vyhledá všechny záznamy obsahující slova Kanada nebo VB.

Like "[A-D]*"

V textovém poli vyhledá všechny záznamy začínající na písmena A až D. Pokud vaše databáze používá sadu zástupných znaků ANSI-92, používejte místo hvězdičky znak procenta (%).

Like "*ar*"

Vyhledá všechny záznamy obsahující po sobě jdoucí písmena „ar“. Pokud vaše databáze používá sadu zástupných znaků ANSI-92, používejte namísto hvězdičky znak procenta (%).

Like "Maison Dewe?"

Vyhledá všechny záznamy začínající slovem Maison a obsahující druhý řetězec o délce pět písmen, jehož první čtyři písmena jsou Dewe a poslední písmeno je libovolné. Pokud databáze používá sadu zástupných znaků ANSI-92, používejte místo otazníku (?) znak podtržítka (_).

#2.2.2010#

Vyhledá všechny záznamy s datem 2. února 2010. Pokud se v databázi používá sada zástupných znaků ANSI-92, ohraničte datum místo křížku (#) jednoduchými uvozovkami ('2.2.2010').

< Date() - 30

Použije funkci Date k vrácení všech dat starších než 30 dní.

Date()

Použije funkci Date k vrácení všech záznamů obsahujících aktuální datum.

Between Date() And DateAdd("M"; 3; Date())

Použije funkce Date a DateAdd k vrácení všech záznamů obsahujících datum mezi aktuálním datem a datem za tři měsíce.

Is Null

Vrátí všechny záznamy obsahující hodnotu Null (prázdná nebo nedefinovaná hodnota).

Is Not Null

Vrátí všechny záznamy obsahující libovolnou hodnotu (záznamy, které nemají hodnotu Null).

""

Vrátí všechny záznamy obsahující řetězec nulové délky. Řetězec nulové délky použijte v případě, že potřebujete přidat hodnotu do povinného pole, ale ještě nevíte, o jakou hodnotu se skutečně jedná. Pole může například vyžadovat faxové číslo, ale některý z vašich zákazníků ještě nevlastní fax. V takovém případě zadejte místo čísla dvojici uvozovek bez mezer ("").

Začátek stránky

Další informace

Proč se zobrazuje tato chybová zpráva a jak lze chybu opravit?

Pokud vytvoříte odstraňovací dotaz s použitím více tabulek a vlastnost Jedinečné záznamy daného dotazu je nastavena na hodnotu Ne, zobrazí aplikace Access při spuštění dotazu chybovou zprávu Nebylo možné odstranit ze zadaných tabulek.

Tento problém vyřešíte nastavením vlastnosti Jedinečné záznamy dotazu na hodnotu Ano.

  1. Otevřete odstraňovací dotaz v návrhovém zobrazení.

  2. Pokud není zobrazen seznam vlastností dotazu, otevřete jej stisknutím klávesy F4.

  3. Klepnutím na návrhář dotazů zobrazte vlastnosti dotazu (a nikoli vlastnosti pole).

  4. V seznamu vlastností dotazu vyhledejte vlastnost Jedinečné záznamy a nastavte ji na hodnotu Ano.

Začátek stránky

Ukončení blokování dotazů režimem vypnutí

Ve výchozím nastavení platí, že pokud otevřete databázi, která není nastavena jako důvěryhodná nebo není uložena v důvěryhodném umístění, bude aplikace Access blokovat spuštění všech akčních dotazů.

Pokud není při pokusu o spuštění akčního dotazu provedena žádná akce, ověřte, zda stavový řádek aplikace Access nezobrazuje následující zprávu:

Akce či událost byly blokovány režimem vypnutí.

Při zobrazení této zprávy můžete povolit zablokovaný obsah provedením následujícího kroku:

  • Na panelu zpráv Upozornění zabezpečení klikněte na Povolit obsah, a znovu spusťte dotaz.

začátek stránky

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×