Výběr primárního klíče

Nepoužívejte PSČ ani číslo sociálního zabezpečení

Databáze závisí na klíčích pro ukládání, řazení, porovnávání nebo vytváření vztahů mezi záznamy. Pokud jste se nějakou dobu nacházeli kolem databází, pravděpodobně jste slyšeli o různých typech klíčů: primární klíče, kandidátské klíče a cizí klíče . Když vytvoříte novou databázovou tabulku, budete vyzváni k výběru jednoho primárního klíče, který bude jednoznačně identifikovat každý záznam uložený v dané tabulce.

Proč je primární klíč důležitý

Výběr primárního klíče je jedním z nejdůležitějších rozhodnutí, která učiníte při návrhu nové databáze . Nejdůležitějším omezením je, že musíte zajistit, aby vybraný klíč byl jedinečný. Je-li možné, že dvě záznamy - minulá, současná nebo budoucí - mohou sdílet stejnou hodnotu pro atribut, je to špatná volba primárního klíče.

Dalším důležitým aspektem primárního klíče je jeho použití jinými tabulkami, které k němu odkazují v relační databázi. V tomto ohledu primární klíč funguje jako cíl ukazatele. Vzhledem k těmto vzájemným závislostem musí primární klíč existovat při vytváření záznamu a nikdy se nemění.

Špatná volba pro primární klíče

To, co někteří lidé považují za zřejmou volbu pro primární klíč, může být místo toho špatnou volbou. Zde je několik příkladů:

Výběr efektivního primárního klíče

Takže, co dělá dobrý primární klíč? Ve většině případů se obraťte na databázový systém podpory.

Nejlepším postupem v návrhu databáze je použití interně generovaného primárního klíče. Váš systém správy databáze může obvykle generovat jedinečný identifikátor, který nemá žádný význam mimo databázový systém. Můžete například použít datový typ Microsoft Access AutoNumber a vytvořit pole s názvem RecordID. Datový typ AutoNumber automaticky zvýší pole při každém vytvoření záznamu. Zatímco samotné číslo je bezvýznamné, poskytuje spolehlivý způsob, jak odkazovat na jednotlivý záznam v dotazech.

Dobrý primární klíč je obvykle krátký, používá čísla a vyhýbá se speciálním znakům nebo kombinaci velkých a malých znaků, což usnadňuje rychlé vyhledání a porovnávání databází.