[[oktatas:adatbázis-kezelés|< Adatbázis-kezelés]] ====== Normalizálás ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2014 * Licenc: GNU Free Documentation License 1.3 * Web: http://szit.hu ===== Fogalmak ===== * funkcionális függés - A -> B * Az A függ B től, ha A változik, biztosan változik B is. * tranzitív függés * egy attribútum nem csak az elsődleges kulcstól függ * például adott A, B, C attribútum * Ha A -> B és B -> C fennáll, akkor A -> C tranzitívfüggőségéről beszélünk. ===== Funkcionális függőségek ===== ==== Funkcionális függőség ==== A járműveknek rendszáma minden jármű esetén egyedi. Egy rendszámból következik a tulajdonosa. Vagyis a rendszámtól funkcionálisan függ a tulajdonos neve. {{:oktatas:adatbázis-kezelés:funkcionalisfuggoseg_jarmu.png|}} A kapcsolat baloldalán a függőség meghatározója áll, jobb oldalon pedig egy tőle függő érték. Ezt a függőséget így is felírhatjuk: * rendszám -> tulajdonos ==== Funkcionális függőség több értékkel ==== Egy meghatározó attribútumhoz több érték is tartozhat. {{:oktatas:adatbázis-kezelés:funkcionalisfuggosegtobbertekkel_jarmu.png|}} ==== Kölcsönös függőség ==== {{:oktatas:adatbázis-kezelés:funkcionalisfuggosegkolcsonosen_jarmu.png|}} ==== Összetett meghatározó ==== {{:oktatas:adatbázis-kezelés:funkcionalisfuggosegosszetettmeghatarozo_iskola.png|}} ===== Többértékű függőség ===== {{:oktatas:adatbázis-kezelés:tobbertekufuggoseg_iskola.png|}} * A -> -> B * tanárAz -> -> tantárgy * tantárgy -> -> könyv * név -> -> város, utca ===== Első normálforma - 1NF ===== * Minden mező csak 1 adatot tartalmaz. ===== Második normálforma - 2NF ===== * 1NF-en van * Minden nem azonosító attribútum funkcionálisan függ az azonosító attribútumtól ===== Harmadik normálforma - 3NF ===== * 2NF-en van * A nem azonosító attribútumok nem függnek más nem azonosító attribútumtól. ===== Boyce/Codd normál forma - BCNF ===== Több kulcsos táblák esetnén értelmezzük. * 3NF-en van * Minden elsődleges attribútum teljes funkcionális függőségben van azokkal a kulcsokkal, amelyeknek nem része ===== Negyedik normálforma - 4NF ===== Többértékű függőség esetén értelmezzük. * 3NF-en van * egy X->> Y többértékű függőséget tartalmazó relációban csak X és Y-ban megtalálható attribútumokat tartalmazza. ===== Ötödik normálforma - 5NF ===== A többértékű függőségek esetén előfordul, ha két táblára bontok egy táblát információt vesztek. Ilyen esetben felvehetünk egy harmadik táblát, így 5NF-ben lesz az adatbázisunk. * 3NF-ben van * minden kulcs egyszerű kulcs Ha 5NF-ben van az adatbázis, akkor 4NF-ben is. ^ tanár ^ tantárgy ^ diák ^ | Nagy József | kémia | Pat Marcell | | Pete Mária | matematika | Kis Iván | | Nagy József | fizika | Pat Marcell | | Nagy József | kémia | Kis Iván | | Pete Mária | matematika | Pat Marcell | | Kicsi Emese | fizika | Kis Iván | --- ^ tanár ^ tantárgy ^ | Nagy József | kémia | | Pete Mária | matematika | | Nagy József | fizika | | Kicsi Emese | fizika | ^ tantárgy ^ diák ^ | kémia | Pat Marcell | | matematika | Kis Iván | | fizika | Pat Mercell | | kémia | Kis Iván | | matematika | Pat Mercell | | fizika | Kis Iván | ^ tanár ^ diák ^ | Nagy József | Pat Marcell | | Pete Mária | Pat Marcell | | Pete Mária | Kis Iván | | Nagy József | Kis Iván | | Kicsi Emese | Kis Iván |