Duplicitním hodnotám v poli v accessové tabulce můžete zabránit vytvořením jedinečného indexu. Jedinečný index je index, který vyžaduje, aby každá hodnota indexovaného pole byla jedinečná.
Existují dva základní způsoby, jak vytvořit jedinečný index:
-
Nastavte vlastnost Indexované pole na Ano (bez duplicit). Můžete to udělat tak, že tabulku otevřete v Návrhové zobrazení. Tato metoda je jednoduchá a dobrá volba, pokud chcete měnit jenom jedno pole najednou.
-
Vytvoření Definiční dotaz, který vytvoří jedinečný index Můžete to provést pomocí Zobrazení SQL. Tato metoda není tak jednoduchá jako použití návrhového zobrazení, ale má výhodu: dotaz definice dat můžete uložit a později ho znovu použít. To je užitečné, pokud pravidelně odstraňujete a znovu vytváříte tabulky a chcete u některých polí používat jedinečné indexy.
V tomto článku
Nastavte vlastnost Indexované pole na Ano (bez duplicit).
-
V navigačním podokně klikněte pravým tlačítkem na tabulku, která obsahuje pole, a potom klikněte na Návrhové zobrazení.
-
Vyberte pole, u kterého chcete mít jistotu, že obsahuje jedinečné hodnoty.
-
V podokně Vlastnosti pole v dolní části návrhového zobrazení tabulky na kartě Obecné nastavte vlastnost Indexované na Ano (bez duplicit).
-
Uložte změny do tabulky.
Poznámka: Pokud už v poli pro záznamy tabulky existují duplicity, access při pokusu o uložení změn tabulky s novým indexem zobrazí chybovou zprávu (Chyba 3022). Před nastavením a uložením nového jedinečného indexu budete muset tyto duplicitní hodnoty polí ze záznamů tabulky odebrat.
Vytvoření jedinečného indexu pro pole pomocí dotazu definice dat
-
Na kartě Vytvoření klikněte ve skupině Dotazů na tlačítko Návrh dotazu.
-
Na kartě Návrh pro dotazy klikněte ve skupině Výsledky na šipku pod položkou Zobrazení a potom klikněte na Zobrazení SQL.
-
Odstraňte z dotazu všechny existující SQL. (Před odstraněním existujícího textu access pravděpodobně jenom zobrazí příkaz SELECT .)
-
Do dotazu zadejte nebo vložte následující kód SQL:
CREATE UNIQUE INDEX index_name
ON table (field); -
V SQL nahraďte proměnné následujícím způsobem:
-
Nahraďte index_name názvem indexu. Je vhodné použít název, který vám pomůže určit, k čemu index slouží. Pokud se například má index ujistit, že telefonní čísla jsou jedinečná, můžete ho pojmenovat unique_phone.
-
Nahraďte tabulku názvem tabulky, která obsahuje pole, které se má indexovat. Pokud název tabulky obsahuje mezery nebo speciální znaky, musíte název uzavřít do hranatých závorek.
-
Nahraďte pole názvem pole, které se má indexovat. Pokud název pole obsahuje mezery nebo speciální znaky, musíte název uzavřít do hranatých závorek.
-
-
Uložte a zavřete dotaz.
-
Spuštěním dotazu vytvořte index. Všimněte si, že dotaz můžete spustit z makra pomocí akce makra SpustitSQL.