Különbség 3NF és BCNF

Anonim

3NF vs BCNF

A normalizálás olyan folyamat, amelyet a relációs adatbázisokban lévő adatokban jelen lévő redundanciák minimalizálása érdekében hajtanak végre. Ez a folyamat főleg a nagy asztalokra osztja a kisebb asztaloknál kevesebb elbocsátást. Ezek a kisebb táblák jól meghatározott kapcsolatokon keresztül kapcsolódnak egymáshoz. Egy jól normalizált adatbázisban az adatok bármilyen módosítása vagy módosítása csak egyetlen táblázatot módosít. A harmadik normál formát (3NF) 1971-ben mutatta be Edgar F. Codd, aki szintén a relációs modell feltalálója és a normalizáció koncepciója. A Boyce-Codd normál űrlapot (BCNF) 1974-ben mutatta be Codd és Raymond F. Boyce.

Mi a 3NF?

A 3NF a relációs adatbázis normalizálásában használt harmadik normál formanyomtatvány. A Codd meghatározása szerint egy táblázat 3NF-ben van, ha és csak akkor, ha ez a táblázat a második normál formában (2NF) van, és minden olyan attribútum, amely nem tartozik egy jelölt kulcshoz, közvetlenül függ az adott táblázat minden jelölt kulcsát. 1982-ben Carlo Zaniolo másképp alakította a 3NF-et. A 3NF-nek megfelelő táblázatok általában nem tartalmaznak olyan rendellenességeket, amelyek a rekordok beillesztésével, törlésével vagy frissítésével kapcsolatosak.

Mi a BCNF?

BCNF (más néven 3. 5NF) egy másik normál forma, amelyet a relációs adatbázis normalizálásához használnak. Bevezették, hogy rögzítsék azokat az anomáliákat, amelyekre a 3NF nem foglalkozik. Egy táblázat BCNF-ben szerepel, ha és csak akkor, ha az A → B forma függvényei mindegyike nem triviális, az A egy szuper kulcs. A BCNF formátumban nem szereplő tábla bontása nem garantálja a BCNF formában lévő táblázatok előállítását (az eredeti táblázatban szereplő függőségek megőrzése mellett).

Mi a különbség a 3NF és a BCNF között?

Mind a 3NF, mind a BCNF normális formák, amelyeket a relációs adatbázisokban használnak a táblázatok elbocsátásainak minimalizálása érdekében. Egy olyan táblázatban, amely a BCNF normális formában van, az A → B forma minden nem triviális függvényében az A egy szuper kulcs, míg a 3NF-nek megfelelő táblázat a 2NF-ben van, és minden nem primer attribútumnak közvetlenül az adott táblázat minden jelölt kulcsától függnie kell. A BCNF erősebb normál formának tekinthető, mint a 3NF, és úgy fejlesztették ki, hogy rögzítse az anomáliák egy részét, amelyeket a 3NF nem tudott megragadni. A BCNF formanyomtatványnak megfelelő tábla megszerzéséhez meg kell szüntetni egy táblázatot, amely a 3NF-ben található. Ez a bomlás további lekérdezési műveletekhez (vagy Descartes termékekhez) vezethet. Ez növeli a számítási időt. Másrészt a BCNF-nek megfelelő táblázatoknak kevesebb az elbocsátása, mint azok a táblázatok, amelyek csak a 3NF-nek megfelelnek.Ezen túlmenően a legtöbb esetben lehetőség van arra, hogy a 3NF-nek megfelelő táblázatot szerezzen be anélkül, hogy megakadályozná a függőség megőrzését és a veszteségmentes csatlakozást. De ez nem mindig lehetséges a BCNF-nél.