Obsah:
Definice - Co znamená Kandidátský klíč?
Kandidátský klíč je sloupec nebo sada sloupců v tabulce, která dokáže jedinečně identifikovat jakýkoli databázový záznam bez odkazu na jakákoli jiná data. Každá tabulka může mít jeden nebo více kandidátních klíčů, ale jeden kandidátský klíč je jedinečný a nazývá se primární klíč. To je obvykle nejlepší z kandidátních klíčů, které lze použít pro identifikaci.
Pokud je klíč složen z více než jednoho sloupce, je znám jako složený klíč.
Techopedia vysvětluje klíč kandidáta
Nejlepší způsob, jak definovat kandidátní klíče, je na příkladu: Navrhuje se databáze banky. Pro jednoznačnou definici účtu každého zákazníka lze pro každý z jeho účtů použít kombinaci data narození zákazníka a pořadového čísla. Kontrolní účet pana Andrewa Smithe tedy může být očíslován 120344-1 a jeho spořicí účet 120344-2. Právě byl vytvořen klíč kandidáta.
To může způsobit problémy. Co když si chce více než jedna osoba se stejným datem narození otevřít účet v bance?
Z důvodu těchto potenciálních nástrah je často používanou možností vytvoření jedinečného klíče kandidáta. V takovém případě může databáze banky vydávat jedinečná čísla účtů, která jsou zaručena, aby zabránili právě zvýrazněnému problému. Tato čísla účtů mohou mít zpravidla integrovanou logiku. Například kontrolní účty mohou začínat písmenem „C“, za kterým následuje rok a měsíc vytvoření a v tomto měsíci pořadové číslo. Kontrolní účet Andrew Smith tedy může být nyní C-200805-22. I bez odkazu na jiné místo může teller zjistit, že se jednalo o 22. kontrolní účet vytvořený v květnu 2008. Spořicí účty se řídí stejnou logikou, ale s „S“ namísto „C.“
Všimněte si, že je možné jednoznačně identifikovat každý účet pomocí výše uvedených dat narození a pořadového čísla, takže se jedná o kandidátní klíč, který lze případně použít k identifikaci záznamů. Právě byl však předveden mnohem lepší způsob, jak dělat to samé: vytvořit klíč kandidáta. Pokud je zvolený kandidátský klíč tak dobrý, že určitě dokáže jednoznačně identifikovat každý záznam, měl by být použit jako primární klíč. Všechny databáze umožňují definovat jeden a pouze jeden primární klíč v tabulce.
