Primární klíč vs. Kandidátský klíč
Přestože je primární klíč vybrán z kandidátských klíčů, existuje mezi primárním klíčem a ostatními kandidátskými klíči určitý rozdíl, který bude podrobně popsán v tomto článku. Návrh databáze je jednou z nejdůležitějších činností, které by se měly při údržbě a ukládání dat provádět. Během tohoto procesu navrhování je třeba vytvořit různé tabulky s mnoha vztahy. Pro přístup k těmto tabulkám v databázi se používají různé typy klíčů v moderních jazycích pro navrhování databází, jako je MYSQL, MSAccess, SQLite atd. Z těchto klíčů se kandidátské klíče a primární klíče staly nezbytnými v postupech navrhování databází.
Co je klíč kandidáta?
Klíč kandidáta je jeden sloupec nebo sada sloupců v tabulce databáze, které lze použít k jednoznačné identifikaci jakéhokoli databázového záznamu bez odkazování na jakákoli jiná data. Každá tabulka databáze může mít jeden nebo více než jeden kandidátský klíč. Sadu kandidátských klíčů lze vytvořit pomocí funkčních závislostí. Klíč kandidáta obsahuje některé důležité funkce. Jsou;
• kandidátní klíče by měly být jedinečné v rámci domény a neměly by obsahovat žádné hodnoty NULL.
• kandidátský klíč by se nikdy neměl měnit a musí mít stejnou hodnotu pro konkrétní výskyt entity.
Hlavním účelem kandidátského klíče je pomoci identifikovat jeden jediný řádek z milionů řádků ve velké tabulce. Každý kandidátský klíč je kvalifikovaný, aby se stal primárním klíčem. Ze všech kandidátských klíčů se však nejdůležitější a speciální kandidátský klíč stane primárním klíčem tabulky a je nejlepším mezi kandidátskými klíči.
Co je primární klíč?
Primární klíč je nejlepší kandidátní klíč tabulky, který se používá k jedinečné identifikaci záznamů uložených v tabulce. Při vytváření nové tabulky v databázi jsme vyzváni k výběru primárního klíče. Výběr primárního klíče pro tabulku je proto nejkritičtějším rozhodnutím, které by měl návrhář databáze učinit. Nejdůležitějším omezením, které je třeba vzít v úvahu při rozhodování o primárním klíči, je, že vybraný sloupec tabulky by měl obsahovat pouze jedinečné hodnoty a neměl by obsahovat žádné hodnoty NULL. Některé z primárních klíčů, které se běžně používají při navrhování tabulek, jsou Social Security Number (SSN), ID a National Identity Card Number (NIC).
Programátor by si měl pamatovat na pečlivý výběr primárního klíče, protože je obtížné jej změnit. Proto je podle programátorů nejlepší praxí vytvoření primárního klíče použít interně generovaný primární klíč, jako je ID záznamu vytvořené datovým typem AutoNumber MS Access. Pokud se pokusíme vložit záznam do tabulky s primárním klíčem, který duplikuje existující záznam, vložení se nezdaří. Hodnota primárního klíče by se neměla neustále měnit, proto je důležitější zachovat statický primární klíč.
Primární klíč je nejlepší kandidát.
Jaký je rozdíl mezi primárním klíčem a klíčem kandidáta?
• Kandidátský klíč je sloupec, který se kvalifikuje jako jedinečný, zatímco primární klíč je sloupec, který jednoznačně identifikuje záznam.
• Tabulka bez kandidátských klíčů nepředstavuje žádný vztah.
• V databázi může být mnoho kandidátských klíčů pro tabulku, ale pro tabulku by měl být pouze jeden primární klíč.
• Ačkoli je primární klíč jedním z kandidátských klíčů, někdy je jediným kandidátním klíčem.
• Jakmile byl vybrán primární klíč, ostatní kandidátské klíče se stanou jedinečnými klíči.
• Kandidátní klíč může prakticky obsahovat hodnoty NULL, ačkoli v současnosti žádnou hodnotu neobsahuje. Kandidátský klíč proto není kvalifikovaný pro primární klíč, protože primární klíč by neměl obsahovat žádné hodnoty NULL.
• Je také možné, že kandidátské klíče, které jsou v tuto chvíli jedinečné, mohou obsahovat duplicitní hodnoty, které diskvalifikují kandidátský klíč, aby se nestal primárním klíčem.
Shrnutí:
Primární klíč vs. klíč kandidáta
Klíč kandidáta a primární klíč jsou základní klíče, které se používají při navrhování databází, aby bylo možné jednoznačně identifikovat data v záznamu a vytvořit vztahy mezi tabulkami databáze. Tabulka by měla obsahovat pouze jeden primární klíč a může obsahovat více než jeden kandidátský klíč. Dnes je většina databází schopna automaticky generovat svůj vlastní primární klíč. Proto primární klíč a kandidátní klíče poskytují četnou podporu systémům správy databází.