Primární klíč je pole nebo sada polí s hodnotami, které jsou v rámci tabulky jedinečné. Pomocí hodnot klíče můžete odkazovat na celé záznamy, protože každý záznam má pro klíč jinou hodnotu. Každá tabulka může mít jenom jeden primární klíč. Access může automaticky vytvořit pole primárního klíče při vytváření tabulky nebo můžete zadat pole, která chcete použít jako primární klíč. Tento článek vysvětluje, jak a proč primární klíče používat.
Pokud chcete nastavit primární klíč tabulky, otevřete tabulku v návrhovém zobrazení. Vyberte pole, které chcete použít, a pak na pásu karet vyberte Primární klíč.
V tomto článku
- Přehled primárních klíčů v Accessu
- Nastavení primárního klíče na základě již dostupných polí v Accessu
- Odebrání primárního klíče
- Změna primárního klíče v Accessu
- Další informace
Přehled primárních klíčů v Accessu
Access používá pole primárního klíče k rychlému přidružení dat z více tabulek a zkombinování těchto dat smysluplným způsobem. Pole primárního klíče můžete zahrnout do jiných tabulek jako odkaz na tabulku, která je zdrojem primárního klíče. V těchto tabulkách se tato pole nazývají cizí klíče. Například pole Kód zákazníka z tabulky Zákazníci může být použito v tabulce Objednávky. V tabulce Zákazníci je to primární klíč. V tabulce Objednávky se toto pole jmenuje cizí klíč. Cizí klíč je tedy vlastně primárním klíčem jiné tabulky. Další informace najdete v části Základy návrhu databáze.
1. Primární klíč:
2. Cizí klíč
Pokud přesouváte existující data do databáze, možná už máte pole, které můžete použít jako primární klíč. Často jedinečné identifikační číslo, například ID, sériové číslo nebo kód slouží jako primární klíč. Můžete mít například tabulku Zákazníci, ve které každý zákazník má svoje jedinečné číselné ID. Pole ID zákazníka je primárním klíčem.
Access automaticky vytvoří index primárního klíče, což napomáhá urychlení dotazů a dalších operací. Access také zajišťuje, aby měl každý záznam hodnotu v poli s primárním klíčem a aby byl vždy jedinečný.
Při vytvoření nové tabulky v zobrazení Datový list za vás Access automaticky vytvoří primární klíč a přiřadí mu pole s názvem ID a datový typ Automatické číslo.
Jak vypadá vhodný primární klíč?
Aby pole mohlo sloužit jako primární klíč, mělo by splňovat několik následujících podmínek:
- Jedinečným způsobem identifikuje každý řádek.
- Nikdy není prázdný nebo null – vždy obsahuje hodnotu.
- Hodnoty, které obsahuje, se zřídka (ideálně nikdy) nemění.
Pokud nemůžete identifikovat dobrý klíč, vytvořte pole automatického číslo, které se použije jako klíč. Pole typu Automatické číslo automaticky vygeneruje svoji hodnotu při prvním uložení každého záznamu. Pole Automatické číslo tedy splňuje všechny tři vlastnosti vhodného primárního klíče. Další informace o přidání pole s automatickým číslem najdete v tématu Přidání pole automatického číslo jako primárního klíče.
Vhodným primárním klíček je pole Automatické číslo.
Příklady nevhodného primárního klíče
Jakékoli pole, ve kterém chybí jedna nebo více zmíněných vlastností vhodného primárního klíče, není vhodné použít jako primární klíč. Následuje několik příkladů primárních klíčů nevhodných pro tabulku Kontakty, ve kterých je vysvětleno, proč daná pole nejsou vhodná.
| Nevhodné primární klíče | Důvod |
|---|---|
| Jméno a příjmení | Nemusí být zaručena jedinečnost pole a může také docházet ke změnám. |
| Telefonní číslo | Může se změnit. |
| E-mailová adresa | Může se změnit. |
| PSČ | PSČ může sdílet více osob. |
| Kombinace faktů a čísel | Část faktu se může změnit, což může vytvořit zatěžující údržbu. Pokud se část faktu opakuje jako samostatné pole, může to vést ke zmatkům. Například, zkombinování města a přírůstkového čísla (např. NEWYORK0579) by bylo špatnou volbou, pokud je dané město také uloženo jako pole. |
| Čísla sociálního pojištění |
|
Složené klíče: kombinace více polí jako primárního klíče
V některých případech chcete jako primární klíč použít dvě nebo více polí v tabulce. Například tabulka Podrobnosti objednávky, která obsahuje položky řádku pro objednávky, může jako svůj primární klíč použít dvě pole: ID objednávky a ID produktu. Klíči, který má více polí, říkáme složený klíč.
Nastavení primárního klíče na základě již dostupných polí v Accessu
Aby primární klíč dobře fungoval, musí pole jednoznačně identifikovat každý řádek, pole nesmí být prázdné ani obsahovat hodnotu Null a mělo by se pouze zřídkakdy (v ideálním případě nikdy) měnit. Nastavení primárního klíče:
Otevřete databázi, kterou chcete změnit.
V navigačním podokně klikněte pravým tlačítkem myši na tabulku, ve které chcete nastavit primární klíč, a v místní nabídce vyberte Návrhové zobrazení.
Tip:
Pokud není zobrazeno navigační podokno, zobrazte jej stisknutím klávesy F11.
Vyberte jedno nebo více polí, která chcete použít jako primární klíč.
Pokud chcete vybrat jedno pole, vyberte volič řádků pro požadované pole.
Pokud chcete vybrat více polí pro vytvoření složeného klíče, podržte stisknutou klávesu CTRL a pak vyberte volič řádků pro každé pole.Na kartě Návrh tabulky ve skupině Nástroje vyberte Primární klíč.
Do levé části pole nebo polí, která byla určena jako primární klíč, se připojí indikátor klíče.
Odebrání primárního klíče v Accessu
Odeberete-li primární klíč, nebudou již pole, která dříve sloužila jako primární klíč, poskytovat primární prostředky k identifikaci záznamu.
Odebrání primárního klíče neodstraní pole z tabulky, ale odebere index vytvořený pro primární klíč.
Před odstraněním primárního klíče se přesvědčte, jestli primární klíč není součástí relací mezi tabulkami. Pokud se pokusíte odstranit primární klíč, který je součástí jedné nebo více relací, zobrazí se v Accessu upozornění, že je třeba nejdřív odstranit příslušné relace.
Pokud chcete odstranit relace mezi tabulkami, proveďte tento postup:
- Pokud jsou tabulky, které jsou součástí relace, otevřené, zavřete je. Relaci mezi otevřenými tabulkami nejdou odstranit.
- Na kartě Databázové nástroje ve skupině Relace vyberte Relace.
- Vyberte Přidat tabulky.
- Vyberte čáru relace tabulky pro relaci tabulky, kterou chcete odstranit (čára se při výběru změní na tučné písmo) a stiskněte klávesu DELETE.
- Na kartě Relationships Design (Návrh relací ) klikněte ve skupině Relace na Close (Zavřít).
Po odstranění relací klikněte v navigačním podokně pravým tlačítkem na tabulku, ze které chcete odebrat primární klíč, a pak vyberte Návrhové zobrazení.
Tip:
Pokud není zobrazeno navigační podokno, zobrazte jej stisknutím klávesy F11.
Vyberte volič řádku pro aktuální primární klíč.
Pokud se primární klíč skládá z jednoho pole, vyberte pro toto pole volič řádků.
Pokud se primární klíč skládá z více polí, vyberte volič řádků pro libovolné pole v primárním klíči.Na kartě Návrh tabulky ve skupině Nástroje vyberte Primární klíč.
Z pole nebo polí, která byla určená jako primární klíč, bude odstraněn indikátor klíče.
Poznámka
Uložíte-li novou tabulku bez nastavení primárního klíče, aplikace Access zobrazí výzvu k jeho vytvoření. Zvolíte-li možnost Ano, Access vytvoří pole Kód, které používá datový typ Automatické číslo, s jehož pomocí bude vytvořena jedinečná hodnota pro jednotlivé záznamy. Obsahuje-li již tabulka pole typu Automatické číslo, Access použije toto pole jako primární klíč.
Změna primárního klíče v Accessu
Pokud chcete změnit primární klíč tabulky, postupujte takto:
- Existující primární klíč odstraňte pomocí pokynů v části Odstranění primárního klíče.
- Nastavení primárního klíče proveďte podle pokynů v části Nastavení primárního klíče.
Další informace
Další informace o návrhu databáze a výběru vhodného primárního klíče najdete v článcích: