Vytvoření a použití indexu za účelem zlepšení výkonu

Vytvoření a použití indexu za účelem zlepšení výkonu

Pokud často hledáte v tabulce Accessu nebo řadíte její záznamy podle určitého pole, můžete tyto operace zrychlit vytvořením indexu pro toto pole. Access používá indexy v tabulce stejně, jako používáte rejstřík v knize: když chce Access vyhledat data, hledá umístění dat v indexu. V některých případech, například u primárního klíče, Access automaticky vytvoří index za vás. Jindy může být vhodné, když index vytvoříte sami.

Tento článek představuje indexy a rozebírá rozhodování o tom, která pole indexovat a jak index vytvořit, odstranit či změnit. Vysvětluje také podmínky, za kterých aplikace Access indexy vytváří automaticky.

V tomto článku

Co je index?

Jak rozhodnout, která pole indexovat

Vytvoření indexu

Odstranění indexu

Prohlížení a úpravy indexů

Automatické vytvoření indexu

Poznámka: Metody popsané v tomto článku není možné využít k vytvoření indexu pro tabulku ve webové databázi. Výkon webové databáze závisí několika faktorech, například na výkonu serveru SharePoint, který webovou databázi hostuje.

Co je index?

Access může pomocí indexu snadněji a rychleji hledat a řadit záznamy. Index ukládá umístění záznamů na základě polí, která jste se rozhodli indexovat. Když Access z indexu zjistí umístění, může pak načíst data přímým přesunutím na správné místo. Používání indexu tímto způsobem může být výrazně rychlejší než hledání dat procházením všech záznamů.

Jak rozhodnout, která pole indexovat

Můžete vytvářet indexy, které jsou založené na jednom poli nebo na více polích. Budete asi chtít indexovat pole, která často prohledáváte, která řadíte a která připojujete k polím v jiných tabulkách v dotazech s více tabulkami. Indexy můžou urychlit vyhledávání a dotazy, ale můžou zpomalit výkon, když přidáváte nebo aktualizujete data. Při zadávání dat do tabulky obsahující jedno nebo více indexovaných polí musí Access aktualizovat indexy při každém přidání záznamu nebo jeho změně. Přidání záznamů přidávacím dotazem nebo připojením importovaných záznamů bude asi také pomalejší, když cílová tabulka obsahuje indexy.

Poznámka: Primární klíč tabulky se indexuje automaticky.

Není možné indexovat pole s datovým typem Objekt OLE, Počítané nebo Příloha. U jiných polí zvažte indexování, pokud platí všechny následující podmínky:

  • Datový typ daného pole je Krátký text (Text v Accessu 2007 a Accessu 2010), Dlouhý text (Memo v Accessu 2007 a Accessu 2010), Číslo, Datum a čas, Automatické číslo, Měna, Ano/Ne nebo Hypertextový odkaz.

  • Předpokládáte hledání podle hodnot uložených v poli.

  • Předpokládáte řazení podle hodnot uložených v poli

  • Předpokládáte ukládání mnoha různých hodnot do pole. Jestliže bude mnoho hodnot uložených do pole stejných, nemusí index dotazy nijak podstatně urychlit.

Indexy založené na více polích

Pokud myslíte, že budete často hledat a řadit podle dvou a více polí najednou, můžete vytvořit index pro kombinaci polí. Pokud například často v jednom dotazu nastavujete kritéria pro pole Dodavatel a Název_produktu, má smysl vytvořit index založený na obou polích.

Když řadíte tabulku podle indexu více polí, Access provede nejprve řazení podle prvního pole určeného v indexu. Pořadí polí nastavíte při vytváření indexu více polí. Pokud existují v prvním poli záznamy se stejnou hodnotou, provede Access řazení podle druhého pole určeného v indexu atd.

Index založený na více polích může být tvořen maximálně deseti poli.

Vytvoření indexu

Chcete-li vytvořit index, nejdříve se rozhodněte, zda chcete vytvořit index jednoho pole nebo více polí. Index jednoho pole vytvoříte nastavením vlastnosti Indexovat. V následující tabulce je uvedeno možné nastavení vlastnosti Indexovat.

Nastavení vlastnosti Indexovat

Význam

Ne

Nevytvářet index podle tohoto pole (nebo odstranit existující index)

Ano (duplicita povolena)

Vytvořit index podle tohoto pole

Ano (bez duplicity)

Vytvořit jedinečný index podle tohoto pole

Pokud vytvoříte jedinečný index, nepovolí Access zadat novou hodnotu do pole, pokud taková hodnota již ve stejném poli existuje v jiném záznamu. Access automaticky vytvoří jedinečný index pro primární klíče, ale někdy také bude potřeba zakázat duplicitní hodnoty v jiných polích. Můžete například vytvořit jedinečný index podle pole, v němž jsou uložená sériová čísla, aby žádné dva produkty neměly stejné sériové číslo.

Vytvoření indexu založeného na jednom poli    

  1. V navigačním podokně klikněte pravým tlačítkem myši na název tabulky, ve které chcete vytvořit index, a v místní nabídce klikněte na příkaz Návrhové zobrazení.

  2. Klikněte na položku Název pole pole, které chcete indexovat.

  3. Ve skupinovém rámečku Vlastnosti pole klikněte na kartu Obecné.

  4. Pokud chcete povolit duplicity, klikněte ve vlastnosti Indexovat na možnost Ano (duplicita povolena), nebo klikněte na možnost Ano (bez duplicity) a vytvořte jedinečný index.

  5. Chcete-li změny uložit, klikněte na Panelu nástrojů Rychlý přístup na tlačítko Uložit nebo stiskněte klávesovou kombinaci CTRL+S.

Vytvoření indexu založeného na více polích    

Pokud chcete pro tabulku vytvořit index více polí, zahrnete pro každé pole v indexu řádek a název indexu zadáte jenom do prvního řádku. Access bude se všemi řádky pracovat jako se součástí stejného indexu, až dojde k řádku, který obsahuje jiný název indexu. Pokud chcete vložit řádek, klikněte pravým tlačítkem myši na místo, kam chcete vložit řádek, a potom v místní nabídce klikněte na příkaz Vložit řádky.

  1. V navigačním podokně klikněte pravým tlačítkem myši na název tabulky, ve které chcete vytvořit index, a v místní nabídce klikněte na příkaz Návrhové zobrazení.

  2. Na kartě Návrh klikněte ve skupině Zobrazit či skrýt na položku Indexy.

    Zobrazí se okno Indexy. Změňte jeho velikost tak, aby se objevily některé prázdné řádky a vlastnosti indexu.

  3. Do prvního prázdného řádku sloupce Název indexu zadejte název indexu. Index lze pojmenovat podle některého z polí indexu nebo lze použít jiný vhodný název.

  4. Ve sloupci Název pole klikněte na šipku a potom na první pole, které chcete použít pro index.

  5. V následujícím řádku nechejte sloupec Název indexu prázdný a potom ve sloupci Název pole klikněte na druhé pole pro index. Tento krok opakujte pro všechna pole, která mají být součástí indexu.

  6. Pokud chcete změnit pořadí řazení hodnot pole, klikněte v okně Indexy ve sloupci Pořadí řazení na možnost Vzestupně nebo Sestupně. Výchozí pořadí řazení je vzestupné.

  7. V okně Indexy ve skupinovém rámečku Vlastnosti indexu nastavte vlastnosti indexu pro řádek sloupce Název indexu, který obsahuje název indexu. Vlastnosti nastavte podle následující tabulky.

    Popisek

    Hodnota

    Primární

    Nastavení ano znamená, že index je primární klíč.

    Jedinečný

    Nastavení ano znamená, že každá hodnota v indexu musí být jedinečná.

    Ignorovat hodnoty Null

    Nastavení ano znamená, že záznamy s hodnotou Null v indexovaných polích budou z indexu vyloučeny.

  8. Pokud chcete změny uložit, klikněte na panelu nástrojů Rychlý přístup na Uložit nebo stiskněte klávesovou kombinaci CTRL+S.

  9. Zavřete okno Indexy.

Odstranění indexu

Pokud zjistíte, že už index nepotřebujete nebo že má příliš velký dopad na výkon, můžete jej odstranit. Pokud index odstraníte, odeberete jenom index a nikoli pole, na základě kterých je vytvořený.

  1. V navigačním podokně klikněte pravým tlačítkem myši na název tabulky, ve které chcete odstranit index, a v místní nabídce klikněte na Návrhové zobrazení.

  2. Na kartě Návrh klikněte ve skupině Zobrazit či skrýt na položku Indexy.

    Zobrazí se okno Indexy. Změňte jeho velikost tak, aby se objevily některé prázdné řádky a vlastnosti indexu.

  3. V okně Indexy vyberte řádek nebo řádky obsahující index, který chcete odstranit, a stiskněte klávesu DELETE.

  4. Pokud chcete změny uložit, klikněte na panelu nástrojů Rychlý přístup na Uložit nebo stiskněte kombinaci kláves CTRL+S.

  5. Zavřete okno Indexy.

Prohlížení a úpravy indexů

Někdy možná budete chtít zobrazit indexy pro tabulku, abyste vyhodnotili jejich dopad na výkon nebo abyste ověřili, že jsou určitá pole indexovaná.

  1. V navigačním podokně klikněte pravým tlačítkem myši na název tabulky, ve které chcete upravit index, a v místní nabídce klikněte na Návrhové zobrazení.

  2. Na kartě Návrh klikněte ve skupině Zobrazit či skrýt na položku Indexy.

    Zobrazí se okno Indexy. Změňte jeho velikost tak, aby se objevily některé prázdné řádky a vlastnosti indexu.

  3. Zobrazte nebo upravte indexy a vlastnosti indexů podle potřeby.

  4. Pokud chcete změny uložit, klikněte na panelu nástrojů Rychlý přístup na Uložit nebo stiskněte kombinaci kláves CTRL+S.

  5. Zavřete okno Indexy.

Automatické vytvoření indexu

V některých případech vytvoří aplikace Access indexy automaticky. Index je například automaticky vytvořen pro každé pole, které označíte jako primární klíč tabulky.

Dalším zdrojem automatického vytváření indexu je možnost Automaticky indexovat při importu či vytváření v dialogovém okně Možnosti aplikace Access. Aplikace Access automaticky indexuje všechna pole, jejichž názvy začínají nebo končí znaky zadanými v poli Automaticky indexovat při importu či vytváření, například ID, klíč, kód nebo číslo. Pokud chcete aktuální nastavení zobrazit nebo změnit, postupujte takto:

  1. Klikněte na Soubor > Možnosti. Pokud používáte Access 2007, klikněte na tlačítko Microsoft Office a pak na Možnosti aplikace Access.

  2. Klikněte na Návrháři objektů a potom v části Návrh tabulky přidejte, upravte nebo odeberte hodnoty v poli Automaticky indexovat při importu či vytváření. Hodnoty oddělte středníkem (;).

    Poznámka: Pokud název pole začíná nebo končí hodnotou uvedenou v poli, bude se pole automaticky indexovat.

  3. Klikněte na OK.

Každý další index vyžaduje od aplikace Access další práci, proto se při přidávání nebo aktualizaci dat snižuje výkon. Můžete proto zvážit změnu hodnot v poli Automaticky indexovat při importu či vytváření nebo snížení počtu hodnot za účelem minimalizace počtu vytvořených indexů.

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.

×