Přeskočit na obsah

Normalizace databáze

Z Wikipedie, otevřené encyklopedie

Normalizace databáze je v informatice označení postupu, kdy je struktura dat v relační databázi přeorganizována tak, aby využívala výhody relačního modelu dat. Normalizace databáze umožňuje data efektivněji ukládat, prohledávat, třídit i zpracovávat. Při normalizaci jsou v databázi měněny atributy (sloupce) jednotlivých tabulek a zaváděny mezi nimi výhodné vztahy (relace), je omezována redundance uložených dat (vět) a je brán ohled na řešení problému s případnou nekonzistencí dat.

Charakteristika

V relačním modelu jsou data uložena v tabulkách, na které má jisté požadavky. Při splnění požadavků je tabulka označována jako normalizovaná. Pokud nejsou tyto požadavky splněny, jsou označovány jako nenormalizované a proces jejich převodu na tabulky se označuje jako normalizace. Při tomto procesu dochází k odstraňování nedostatků tabulek jako je redundance nebo možnost vzniku aktualizační anomálie, tj. nechtěného vedlejšího efektu operace nad databází, při kterém dojde ke ztrátě nebo nekonzistenci dat. Postup normalizace je rozdělen do několika kroků a po dokončení každého z nich se tabulka nachází v určité normální formě. V praxi se většinou normalizuje do třetí normální formy, vyšší normální formy je vcelku obtížné porušit a vyžadují relativně velké znalosti, stejně jako návrh databází takové velikosti, kde je možné je porušit.

Normální formy

  • 0NF: Alespoň jeden atribut obsahuje více než jednu hodnotu.
  • 1NF: Každý atribut obsahuje pouze atomické hodnoty.
  • 2NF: Každý neklíčový atribut je plně závislý na každém kandidátním klíči. (Neklíčovým atributem rozumíme atribut, který není součástí žádného kandidátního klíče.)
  • 3NF: Všechny neklíčové atributy musí být vzájemně tranzitivně nezávislé.
  • BCNF: Atributy, které jsou součástí primárního klíče, musí být vzájemně nezávislé.
  • 4NF: Relace popisuje pouze příčinnou souvislost mezi klíčem a atributy.
  • 5NF: Relaci již není možno bezeztrátově rozložit.

Pro splnění určité normální formy je nutné splnit i ty předchozí. V praxi se obvykle používají pouze první tři.

Ukázky záznamu v databázi

adresa v tabulce nesplňující 1NF
Adresa
Jan Novák, Nádražní 42, Zlín 12300
adresa v tabulce splňující 1NF
Jméno Příjmení Ulice Číslo popisné Město Směrovací číslo
Jan Novák Nádražní 42 Zlín 12300

Externí odkazy