Cieľom Boyce-Codd Normal Form je zvýšiť integritu údajov organizovaním stĺpcov a tabuliek relačnej databázy s cieľom dosiahnuť normalizáciu databázy. K normalizácii databázy dochádza, keď sú medzi tabuľkami vytvorené vzťahy a keď tabuľky majú definované pravidlá, aby bola databáza flexibilnejšia a aby sa zachovali údaje.
Cieľmi normalizácie databáz je eliminovať nadbytočné dáta a zabezpečiť, aby dátové závislosti mali zmysel. Databáza sa normalizuje, keď rovnaké údaje nie sú uložené vo viac ako jednej tabuľke a keď sú v tabuľke uložené iba súvisiace údaje.
Pôvod normálnej formy Boyce-Codd
Dodržiavanie série pokynov zabezpečí, že databázy budú normalizované. Tieto usmernenia sa označujú ako normálne formuláre a sú očíslované od jednej do päť. Relačná databáza je opísaná ako normalizovaná, ak spĺňa prvé tri formy: 1NF, 2NF a 3NF.
BCNF bol vytvorený ako rozšírenie tretej normálnej formy alebo 3NF v roku 1974 Raymondom Boyceom a Edgarom Coddom. Muži pracovali na vytvorení databázových schém, ktoré minimalizujú redundanciu s cieľom znížiť výpočtový čas. Tretia normálna forma odstraňuje stĺpce, ktoré nie sú závislé od primárneho kľúča, navyše spĺňa pokyny v prvej a druhej normálnej forme. BCNF, ktorý sa niekedy označuje ako 3.5NF, spĺňa všetky požiadavky 3NF a vyžaduje, aby kandidátske kľúče neboli závislé od iných atribútov v tabuľke.
V čase vytvorenia BCNF bol Boyce jedným z kľúčových vývojárov Structured English Query Language, neskôr štandardizovaného ako SQL, ktorý zlepšil získavanie údajov pomocou Coddovho relačného modelu. V tomto modeli Codd predpokladal, že štrukturálna zložitosť databáz by sa mohla znížiť, čo znamenalo, že dotazy by mohli byť výkonnejšie a flexibilnejšie.
Pomocou svojich poznatkov z relačnej databázy Codd definoval smernice 1NF, 2NF a 3NF. Spolu s Boyceom definoval BCNF.
Kľúče kandidáta a BCNF
Kandidátsky kľúč je stĺpec alebo kombinácia stĺpcov v tabuľke, ktorá tvorí jedinečný kľúč v databáze. Kombinácia atribútov identifikuje databázový záznam bez odkazu na akékoľvek iné údaje. Každá tabuľka môže obsahovať viacero kandidátskych kľúčov, pričom ktorýkoľvek z nich sa môže kvalifikovať ako primárny kľúč. Tabuľka obsahuje iba jeden primárny kľúč.
Kľúče kandidátov musia byť jedinečné.
Vzťah je v BCNF, ak je každý determinant kandidátsky kľúč. Predstavte si databázovú tabuľku, ktorá uchováva informácie o zamestnancoch a má atribúty,, a.
V tejto tabuľke pole určuje meno a priezvisko. Podobne n-tica (,) určuje.
Id zamestnanca | Krstné meno | Priezvisko | Title |
13133 | Emily | Smith | Manažér |
13134 | Jim | Smith | Spolupracovník |
13135 | Emily | Jones | Spolupracovník |
Kľúč kandidáta pre túto databázu je kľúč, pretože je to jediná hodnota, ktorú nemôže použiť iný riadok.
FAQ
Aké sú požiadavky na normálnu formu Boyce-Codd?
Tabuľka spĺňa požiadavky Boyce-Coddovej normálnej formy (BCNF), ak sú všetky determinanty kandidátskymi kľúčmi a vzťah je v tretej normálnej forme (3NF). 3NF spĺňa pravidlá pre prvý normálny formulár (1NF) a druhý normálny formulár (2NF) a všetky stĺpce sú závislé od primárneho kľúča.
Aký je rozdiel medzi štvrtou normálnou formou a normálnou formou Boyce-Codda?
Štvrtá normálna forma (4NF) je jedna úroveň po normálnej forme Boyce-Codda (BCNF) v normalizácii databázy. 4NF spĺňa požiadavky 3NF rovnako ako BCNF. Tabuľky 4NF však nemajú žiadne viachodnotové závislosti ani vzťahy typu many-to-one, zatiaľ čo tabuľky BCNF môžu mať tieto závislosti.