Tervezés, Normalizálás Adatbázis kezelés Tervezés, Normalizálás
Adatbázis - a megvalósított adatmodell DDL : adatszerkezet leíró nyelv SDL : fizikai szerkezet DML : tárolt adatok visszakeresése DBMS: mindez együtt az adatbázis-kezelő rendszer DB2, ORACLE, MS ACCESS, SQL lekérdező nyelv
Adatmodell Koncepciók gyűjteménye: Szerkezet, adattípusok, kapcsolatok, korlátozó feltételek, adatkezelési műveletek. ER (EER) modell Egyedtípus, köztük lévő kapcsolatok, attribútumok. Egyed előfordulás
Relációs adatmodell Relációs modell: táblázatok (relációk) rendszeréből áll. Alapfogalmak: Rekord Attribútum (mező) Kulcs mező Elsődleges kulcs, idegen kulcs
Relációs modell ÁLLAT név lakcím hobbi főétel Kutya Kutyaól Macskakergetés Csont macska lábtörlő lustálkodás egér
Normalizálás Táblázatszétbontó relációs műveletek sorozata. Csökken a tárolási igény. Megszűnnek a törlési, beszúrási, módosítási problémák. Logikailag áttekinthetőbb lesz.
1NF Oszlopok és sorok száma azonos Minden oszlop csak egy meghatározott értéket vehet fel. Név: MZ/X, születési nap: 7.5 Minden attribútum csak egyetlen értéket vehet fel a tartományból. Pl. több kedvenc zene Minden sorhoz egyedi kulcs tartozik, funkcionális függés Pl. személyi szám
Beteg nyilvántartás Beteg azonosító (B_azon) Beteg neve (B_név) Beteg címe (B_cím) Betegség Osztály azonosító (Oszt_az) Osztály név (Oszt_név) Főorvos Gyógyszer
Beteg nyilvántartás - reláció B_azon B_név B_cím Betegség Oszt_az Oszt_név Főorvos Gyógyszer 444 Kala Pál Piripócs Sérv 01 Sebészet Dr. Akula Algopyrin Semicillin Tyúkszem 02 Szemészet Dr. Doktor 333 Bármi Áron Kukutyim tyúkszem szemészet Nourofen Demalgon Probléma: többértékű mezők, nincs elsődleges kulcs
1NF táblázat Vissza az 1NF feltételekhez B_azon B_név B_cím Betegség Oszt_az Oszt_név Főorvos Gyógyszer 444 Kala Pál Piripócs Sérv 01 Sebészet Dr. Akula Algopyrin Semicillin Tyúkszem 02 Szemészet Dr. Doktor 333 Bármi Áron Kukutyim tyúkszem szemészet Nourofen Demalgon Vissza az 1NF feltételekhez
2 NF Melyek azok az attribútumok, amelyek az egyes összetevőktől egyértelműen függenek, és melyek azok, amelyeket összetett kulcs határoz meg? Beteg azonosítójától egyértelműen függ: neve, címe Betegségtől függ: osztály azonosítója, neve, főorvos Gyógyszer: szükséges a sorok megkülönböztetése céljából.
2NF – 3 új táblázat jön létre Beteg Ki_Mire_Mit_szed B_azon B_név B_cím 444 Kala Pál Piripócs 333 Bármi Áron Kukutyim B_azon Betegség Gyógyszer 444 Sérv Algopyrin Semicillin Tyúkszem 333 tyúkszem Nourofen Demalgon Osztály Betegség Oszt_az Oszt_név Főorvos Sérv 01 Sebészet Dr. Akula tyúkszem 02 szemészet Dr. Doktor
2NF 1 NF - ban van A nem kulcs attribútumok funkcionálisan teljesen függenek az elsődleges kulcstól BETEG (B_azon elsőd. kulcs) KI_MIRE_MIT_SZED ( összetett elsődleges kulcs, B_azon és Betegség idegen kulcs is ). OSZTÁLY (Betegség elsőd. kulcs)
3 NF Tranzitív függések meghatározása OSZTÁLY táblázatban megjelenik egy új betegség: sok a közös adat, felesleges újra tárolás Betegség Oszt_az Oszt_név Főorvos Sérv 01 Sebészet Dr. Akula tyúkszem 02 szemészet Dr. Doktor vakbél
OSZTÁLY táblából 2 új reláció BETEGSÉG Betegség Oszt_az Sérv 01 tyúkszem 02 vakbél OSZTÁLY Oszt_az Oszt_név Főorvos 01 Sebészet Dr. Akula 02 szemészet Dr. Doktor
3NF definíció 2 NF – ban van Funkcionális függés csak az elsődleges kulcstól van, megszüntettük a tranzitív függéseket
Megvalósítás: 4 reláció