Cílem Boyce-Codd Normal Form je zvýšit integritu dat uspořádáním sloupců a tabulek relační databáze za účelem dosažení normalizace databáze. K normalizaci databáze dochází, když jsou vytvořeny vztahy mezi tabulkami a když tabulky mají definovaná pravidla, aby byla databáze flexibilnější a zachovala se data.
Cílem normalizace databází je odstranit nadbytečná data a zajistit, aby datové závislosti dávaly smysl. Databáze je normalizována, když stejná data nejsou uložena ve více než jedné tabulce a když jsou v tabulce uložena pouze související data.
Původ normální formy Boyce-Codd
Podle řady pokynů zajistíte normalizaci databází. Tyto pokyny se označují jako normální formuláře a jsou číslovány od jedné do pěti. Relační databáze je popsána jako normalizovaná, pokud splňuje první tři formy: 1NF, 2NF a 3NF.
BCNF byl vytvořen jako rozšíření třetí normální formy, neboli 3NF, v roce 1974 Raymondem Boycem a Edgarem Coddem. Muži pracovali na vytvoření databázových schémat, která minimalizují redundanci s cílem zkrátit výpočetní čas. Třetí normální formulář kromě splnění pokynů v prvním a druhém normálním formuláři odebere sloupce, které nejsou závislé na primárním klíči. BCNF, který je někdy označován jako 3.5NF, splňuje všechny požadavky 3NF a vyžaduje, aby kandidátské klíče nebyly závislé na jiných atributech v tabulce.
V době vzniku BCNF byl Boyce jedním z klíčových vývojářů Structured English Query Language, později standardizovaného jako SQL, který zlepšil získávání dat pomocí Coddova relačního modelu. V tomto modelu Codd předpokládal, že strukturální složitost databází by mohla být snížena, což znamenalo, že dotazy by mohly být výkonnější a flexibilnější.
Pomocí svých poznatků z relační databáze Codd definoval směrnice 1NF, 2NF a 3NF. Spolu s Boycem definoval BCNF.
Klíče kandidátů a BCNF
Kandidátský klíč je sloupec nebo kombinace sloupců v tabulce, která tvoří jedinečný klíč v databázi. Kombinace atributů identifikuje databázový záznam bez odkazu na jiná data. Každá tabulka může obsahovat více kandidátských klíčů, z nichž každý může být kvalifikován jako primární klíč. Tabulka obsahuje pouze jeden primární klíč.
Klíče kandidátů musí být jedinečné.
Relace je v BCNF, pokud je každý determinant kandidátním klíčem. Zvažte databázovou tabulku, která uchovává informace o zaměstnancích a má atributy,, a.
Pole v této tabulce určuje jméno a příjmení. Podobně n-tice (,) určuje.
ID zaměstnance | Křestní jméno | Příjmení | Title |
13133 | Emily | Smith | Manager |
13134 | Jim | Smith | Společník |
13135 | Emily | Jones | Společník |
Klíč kandidáta pro tuto databázi je, protože je to jediná hodnota, kterou nemůže použít jiný řádek.
FAQ
Jaké jsou požadavky na normální formu Boyce-Codda?
Tabulka splňuje požadavky na normální formu Boyce-Codda (BCNF), pokud jsou všechny determinanty kandidátskými klíči a vztah je ve třetí normální formě (3NF). 3NF splňuje pravidla pro první normální formulář (1NF) a druhý normální formulář (2NF) a všechny sloupce jsou závislé na primárním klíči.
Jaký je rozdíl mezi Fourth Normal Form a Boyce-Codd Normal Form?
Čtvrtá normální forma (4NF) je jedna úroveň po normální formě Boyce-Codda (BCNF) v normalizaci databáze. 4NF splňuje požadavky 3NF stejně jako BCNF. Tabulky 4NF však nemají žádné vícehodnotové závislosti ani vztahy mnoho ku jedné, zatímco tabulky BCNF mohou mít tyto závislosti.