Harmadik normál forma

A harmadik normálforma ( eng.  Third normal form ; rövidítve 3NF ) egy relációs adatbázisban a reláció egyik lehetséges normálformája . A 3NF-et eredetileg E. F. Codd fogalmazta meg 1971 -ben .

Definíció

Az R relációs változó akkor és csak akkor van a 3NF-ben, ha a következő feltételek igazak:

Magyarázatok a definícióhoz:

Az R reláció nem kulcs attribútuma  olyan attribútum, amely nem tartozik R egyik jelölt kulcsához sem .

Egy Z  attribútumkészlet funkcionális függése egy X attribútumkészlettől (írva X → Z , ejtsd: "x határozza meg z-t") tranzitív , ha van olyan Y attribútumkészlet , hogy X → Y és Y → Z. Ugyanakkor az X , Y és Z halmazok egyike sem részhalmaza a másiknak, vagyis az X → Z , X → Y és Y → Z funkcionális függőségek nem triviálisak , és nincs Y funkcionális függőség sem. → X.

A 3NF Codd-éval egyenértékű, de másképpen megfogalmazott definícióját Carlo Zaniolo adta meg 1982 -ben . Eszerint egy relációs változó akkor és csak akkor van a 3NF-ben, ha minden X → A funkcionális függősége teljesíti az alábbi feltételek legalább egyikét:

Zaniolo definíciója egyértelműen meghatározza a különbséget a 3NF és a szigorúbb Boyce-Codd normálforma (BCNF) között: a BCNF kiküszöböli a harmadik feltételt (" A  kulcsattribútum").

"Semmi, csak a kulcs"

A Codd-féle 3NF definíció emlékezetes és hagyományosan leíró összefoglalását Bill Kent adta : minden nem kulcs attribútum "információt kell nyújtson a kulcsról, a teljes kulcsról, és semmi másról, csak a kulcsról" [1] .

A nem kulcsjellemzők "teljes kulcsától" való függés feltétele biztosítja, hogy a reláció második normál formában legyen; és a feltétele annak, hogy "semmitől, csak a kulcstól" függjenek, az, hogy harmadik normál formában legyenek.

Chris Date Kent összefoglalójáról a 3NF "intuitívan vonzó jellemzőjeként" beszél, és megjegyzi, hogy egy kis módosítással a szigorúbb Boyce-Codd normálforma definíciójaként is szolgálhat : "minden attribútumnak információt kell szolgáltatnia egy kulcsról. , egy teljes kulcs, és semmi más, csak a kulcs. A 3NF definíció Kent-féle változata kevésbé szigorú, mint a Data formuláció Boyce-Codd normál formájú változata, mivel az előbbi csak azt mondja ki, hogy a nem kulcsjellemzők kulcsoktól függenek. Az elsődleges attribútumoknak (amelyek kulcsok vagy azok részei) egyáltalán nem kell funkcionálisan függőknek lenniük; mindegyik információt nyújt a kulcsról úgy, hogy megadja magát a kulcsot vagy annak egy részét. Itt meg kell jegyezni, hogy ez a szabály csak nem kulcs attribútumokra érvényes, mivel az összes attribútumra történő alkalmazása teljesen letiltja az összes összetett alternatív kulcsot, mivel egy ilyen kulcs minden eleme megsérti a "teljes kulcs" feltételt.

Példa

Tekintsük példaként az R1 relációs változót:

R1
Munkavállaló Osztály telefon
Grishin Könyvelés 11-22-33
Vasziljev Könyvelés 11-22-33
Petrov Kínálat 44-55-66

Minden alkalmazott kizárólag egy osztályhoz tartozik; minden osztálynak egyetlen telefonja van. Az Employee attribútum az elsődleges kulcs. Az alkalmazottaknak nincs személyes telefonjuk, és az alkalmazott telefonszáma kizárólag az osztálytól függ.

A példában a következő funkcionális függőségek léteznek: Alkalmazott → Osztály , Osztály → Telefon , Alkalmazott → Telefon .

Az R1 relációs változó a második normál formában van, mert mindegyik attribútumnak van egy redukálhatatlan funkcionális függősége a potenciális kulcsfontosságú alkalmazotttól .

A Munkavállaló → Telefon kapcsolat tranzitív, így a kapcsolat nincs harmadik normál formában.

Az R1 felosztása két relációs változót eredményez, amelyek a 3NF-ben vannak:

R2
Osztály telefon
Könyvelés 11-22-33
Kínálat 44-55-66
R3
Munkavállaló Osztály
Grishin Könyvelés
Vasziljev Könyvelés
Petrov Kínálat

Az R1 kezdeti relációt szükség esetén könnyen megkaphatjuk az R2 és R3 relációk összekapcsolásának művelete eredményeként.

Lásd még

Jegyzetek

  1. Kent, William. "Egyszerű útmutató az öt normálformához a relációs adatbáziselméletben" Archiválva : 2007. február 2., a Wayback Machine , Communications of the ACM 26 (2), febr. 1983, pp. 120-125.

Irodalom