Vytvoření a spuštění odstraňovacího dotazu

Důležité :  Tento článek je strojově přeložený – přečtěte si toto upozornění. Anglickou verzi tohoto článku pro referenci najdete tady.

Když chcete rychle odstranit velké množství dat nebo odstranění množiny dat v pravidelných intervalech v Accessové desktopové databázi, odstranění nebo aktualizačního dotazu může být užitečné, protože dotazy umožňují určit kritéria pro rychlé vyhledání a odstranění data. Použití dotazu může být také timesaver vzhledem k tomu můžete znovu použít uložený dotaz.

Poznámka : Před odstraněním libovolných dat nebo spuštěním odstraňovacího dotazu, ujistěte se, jestli máte záložní kopii desktopové databázi Accessu.

Chcete-li odstranit pouze několik záznamů, nepotřebujete dotaz. Pouze otevřete tabulku v zobrazení Datový list, vyberte pole (sloupce) nebo záznamy (řádky), které chcete odstranit, a poté stiskněte klávesu DELETE.

Důležité : Informace v tomto článku jsou určeny pouze pro použití s desktopovou databází. Nelze použít odstranit nebo aktualizovat dotazů v Accessových webových aplikacích.

V tomto článku

Volba typu dotazu

Použití odstraňovacího dotazu

Použití aktualizačního dotazu

Další informace

Tipy pro odstraňování potíží

Volba typu dotazu

K odstranění dat z databáze můžete použít aktualizační dotaz nebo odstraňovací dotaz. Typ dotazu zvolte na základě informací v následující tabulce:

Typ dotazu

Kdy použít

Výsledky

Odstraňovací dotaz

Odebrání celých záznamů (řádků) z tabulky nebo ze dvou souvisejících tabulek současně.

Poznámka : Pokud jsou záznamy uloženy na straně 1 relace 1:N, bude pravděpodobně nutné před spuštěním odstraňovacího dotazu změnit relaci. Další informace získáte v části o odstraňování dat ze souvisejících tabulek.

Odstraňovací dotazy odebírají všechna data všech polí včetně hodnoty klíče, díky níž je záznam jedinečný.

Aktualizační dotaz

Odstranění jednotlivých hodnot polí z tabulky.

Usnadňuje odstraňování hodnot aktualizací stávajících hodnot buď na hodnotu null (to znamená žádná data), nebo na řetězec o nulové délce (dvojice uvozovek, mezi nimiž není žádná mezera).

Začátek stránky

Co je třeba ověřit před použitím dotazu k odstranění libovolných dat

  • Přesvědčte se, zda soubor není jen pro čtení:

    1. Klikněte pravým tlačítkem myši na tlačítko Start a poté klikněte na příkaz Spustit Průzkumníka Windows.

    2. Klikněte pravým tlačítkem myši na soubor databáze a poté klikněte na tlačítko Vlastnosti.

    3. Zjistěte, zda není zaškrtnut atribut Jen pro čtení.

  • 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, zda jste v databázi povolili obsah. Aplikace Access ve výchozím nastavení blokuje všechny akční dotazy (odstraňovací či aktualizační dotazy nebo vytvářecí dotazy), dokud není databáze nastavena jako důvěryhodná. Informace o nastavení databáze jako důvěryhodné jsou uvedeny v části Ukončení blokování dotazů režimem vypnutí.

  • 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.

  • Před prováděním úprav záznamů nebo před jejich odstraňováním se doporučuje vytvořit záložní kopii databáze pro případ, že byste chtěli změny vzít zpět.

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 > 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 na kartu Soubor a najeďte myší na Uložit jako.

  2. Klikněte na Uložit databázi jako a potom na Zálohovat databázi. Access zavře původní soubor, vytvoří jeho záložní kopii a znovu otevře původní soubor.

  3. Klikněte na Uložit jako, zadejte název a umístění záložní kopie a potom klikněte na Uložit.

Poznámka :  Pokud používáte databázi jen pro čtení nebo databázi vytvořenou v předchozí verzi Accessu, zobrazí se pravděpodobně zpráva, že není možné vytvořit záložní kopii databáze.

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 Accessu.

Použití odstraňovacího dotazu

Vytvoření odstraňovacího dotazu, klikněte karta vytvořit, skupině dotazy klikněte na Návrh dotazu. V dialogové okno Zobrazit tabulku pole, 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. Dvojitým kliknutím na hvězdičku (*) v seznamu polí přidejte všechna pole v tabulce do návrhové mřížky.

Použití specifických kritérií v odstraňovacím dotazu

Důležité : 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.

Poklikejte na pole, které chcete zadat jako kritéria pro odstranění, zadejte kritéria v řádku kritérií dotazu designeru a pak zrušte zobrazení zaškrtněte políčko u každého pole kritérií.

Příklad situace, ve které bude pravděpodobně vhodné tuto možnost použít: Předpokládejme, že chcete odebrat všechny nevyřízené objednávky některého zákazníka. Abyste našli pouze tyto záznamy, přidejte do návrhové mřížky pole ID zákazníka a Datum objednávky a potom zadejte identifikační číslo zákazníka a datum, ke kterému se objednávky tohoto zákazníka staly neplatnými.

  1. Na kartě Návrh klikněte na zobrazení > 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

Použití aktualizačního dotazu

Poznámka : Funkci aktualizačního dotazu nelze použít ve webové aplikaci pro Access.

Tento oddíl vysvětluje způsob použití aktualizačního dotazu k odstranění dat jednotlivých polí z tabulek. Při odstranění dat pomocí aktualizačního dotazu dojde v závislosti na zadaných kritériích ke změně stávajících hodnot na hodnotu NULL nebo na řetězec nulové délky (dvojice uvozovek bez mezer mezi nimi).

  1. Klikněte na kartu Vytvoření a ve skupině Dotazy klikněte na položku Návrh dotazu.

  2. Vyberte tabulku obsahující data, která chcete odstranit (jde-li o tabulku, která je součástí relace, vyberte tabulku na straně 1 příslušné relace), klikněte na tlačítko Přidat a poté na tlačítko 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.

  3. 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.

    Podle potřeby můžete zadat kritéria pro jedno nebo více polí v řádku Kritéria návrháře a potom odstranit zaškrtnutí políčka Zobrazit pro každé pole kritéria. Další informace o použití 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.

  4. Na kartě Návrh klikněte ve skupině Výsledky na položku Zobrazení a potom na položku Zobrazení Datový list.

  5. 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 ("").

  6. V případě potřeby, opakujte kroky 3 až 5 a změnit na pole a kritéria, dokud dotaz vrací jen tu část dat, který chcete odstranit a stiskněte kombinaci kláves CTRL + S dotaz uložte.

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

Začátek stránky

Další informace

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

Chcete-li odstranit data z několika souvisejících tabulek, musíte pro každou relaci povolit možnosti Referenční integrita a Kaskádové odstranění souvisejících záznamů. To dotazu dovolí odstranit data z tabulek na stranách 1 a N dané relace. Příprava k odstranění souvisejících dat vyžaduje následující ověření:

  • 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 kaskádové odstranění souvisejících záznamů. 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.

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.

Chcete-li zjistit, které záznamy jsou uloženy na straně 1 a které na straně N dané relace, na kartě Databázové nástroje klikněte ve skupině Relace na položku Relace. Karta Relace zobrazuje tabulky v databázi a jejich relace. Každá relace je znázorněna jako čára spojující pole tabulek.

Následující obrázek znázorňuje typickou relaci. Většina relací v databázi (ne-li všechny) mají stranu 1 a stranu N. V diagramu relací je strana 1 označena číslicí jedna (1) a strana N znakem nekonečna ().

Relace mezi dvěma tabulkami

Když odstraníte záznamy na straně 1 dané relace, odstraníte také všechny související záznamy na straně N této relace. Když však odstraníte záznamy na straně N relace, obvykle neodstraníte záznamy na straně 1.

Aplikace Access rovněž automaticky vynucuje sadu pravidel nazývanou referenční integrita. Tato pravidla zajišťují, aby cizí klíče v databázi obsahovaly správné hodnoty. Cizí klíč je sloupec, jehož hodnoty odpovídají hodnotám ve sloupci primárního klíče jiné tabulky.

Úprava relace

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

  1. Na kartě Databázové nástroje klikněte ve skupině Relace na Relace.

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

  3. V dialogovém okně Upravit relace zkontrolujte, zda je zaškrtnuto políčko Zajistit referenční integritu.

  4. 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 dané relace k odstranění všech souvisejících záznamů na straně N této relace.

  5. Klikněte na tlačítko OK, zavřete podokno Relace a přejděte k další skupině kroků.

Odstranění relace

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

  2. Na kartě Databázové nástroje klikněte ve skupině Relace na Relace.

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

  3. 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 : Budete-li chtít relaci obnovit, podle předchozích kroků otevřete podokno Relace a přetáhněte pole primárního klíče z tabulky na straně 1 na pole cizího klíče tabulky na straně N. Zobrazí se dialogové okno Upravit relaci. Pokud stará relace vynucovala referenční integritu, zaškrtněte políčko Zajistit referenční integritu a klikněte na tlačítko Vytvořit. Jinak pouze klikněte na tlačítko 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érium

Vliv

> 234

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

>= "Novák"

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í přesně „Německo“. Toto kritérium vrátí i záznamy, které kromě textu „Německo“ obsahují 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 se v databázi používá sada 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]*"

Vyhledá všechny záznamy, ve kterých textové pole začíná na písmena A až D. Pokud vaše databáze používá sadu zástupných znaků ANSI-92, použijte místo hvězdičky znak procenta (%).

Like "*ar*"

Vyhledá všechny záznamy obsahující po sobě jdoucí písmena „ar“. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte mí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 se v databázi používá sada 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

Tipy pro odstraňování potíží

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 nastavená na hodnotu Ne, zobrazí 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. Kliknutím na návrhář dotazů zobrazíte vlastnosti dotazu (a nikoli vlastnosti pole).

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

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

Ve výchozím nastavení Pokud otevřete databázi v počítači, který jste se rozhodli nedůvěřovat nebo není uložena v důvěryhodném umístění, Access blokovat spuštění všech akčních dotazů.

Není-li při pokusu o spuštění akčního dotazu provedena žádná akce, ověřte, zda není na stavovém řádku Accessu zobrazena následující zpráva:

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.

Další informace o režimu vypnutí a o zabezpečení Accessu naleznete v článku Chování důvěryhodných a nedůvěryhodných databázových objektů.

začátek stránky

Poznámka : Upozornění ke strojovému překladu: Tento článek přeložil počítačový systém bez zásahu člověka. Společnost Microsoft nabízí tyto strojové překlady proto, aby umožnila uživatelům, kteří nemluví anglicky, získat informace o produktech, službách a technologiích této společnosti. Protože je tento článek strojově přeložený, může obsahovat slovní, syntaktické nebo gramatické chyby.

Sdílení Facebook Facebook Twitter Twitter E-mail E-mail

Byly tyto informace užitečné?

Výborně! Je ještě něco dalšího, co byste nám chtěli dát vědět?

Jak bychom ho mohli vylepšit?

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

×