Adatbázisok 3. gyakorlat Adatmodellezés: E-K modellb l relációs adatbázisséma. Kötelez programok kiválasztása 2016. szeptember 21. 2016. szeptember 21. Adatbázisok 1 / 24
Az adatbázisok szolgáltatásai Több felhasználó párhuzamosan olvashatja, b vítheti, módosíthatja és törölheti az adatokat Az adatok konzisztenciájának és biztonságának biztosítása Eszközök az adatok biztonsági mentésére, vissza- és helyreállítására Nagy mennyiség adat hatékony kezelése Nagyszámú felhasználó kiszolgálása 2016. szeptember 21. Adatbázisok 2 / 24
A relációs adatmodell Az egyedeket, tulajdonságokat és kapcsolatokat egyaránt táblázatok, ún. adattáblák segítségével adja meg Az adattábla sorokból és oszlopokból áll. Egy sorát rekordnak nevezzük, amely annyi mez b l áll, ahány oszlopa van a táblának 2016. szeptember 21. Adatbázisok 3 / 24
A relációs adatbázisséma Minden adattáblához tartozik egy relációséma, amely annak szerkezetét írja le R(A 1,..., A n ), ahol R relációséma, és A 1,..., A n attribútumok Az attribútumok egy részhalmaza lehet kulcs, ezeket aláhúzással jelöljük Az el z példa sémája: Vev (Vev kód, Vev név, Vev cím) 2016. szeptember 21. Adatbázisok 4 / 24
Kulcsok Egy relációséma attribútumainak egy olyan, minimális elemszámú részhalmaza, amely az adott séma feletti tetsz leges tábla bármely két sorában különbözik A kulcs egyértelm en azonosítja a tábla egy sorát Egy táblához több kulcs is tartozhat! (Ezek közül egyet kiválasztunk, és ez lesz az els dleges kulcs.) Ami nem kulcs, az másodlagos attribútum 2016. szeptember 21. Adatbázisok 5 / 24
Kulcsok A kulcs egyértelm en azonosítja az egyedet Küls kulcs: az attribútumok azon részhalmaza, amely egy másik adatbázisséma els dleges kulcsára való hivatkozás Jelölése szaggatott vonallal aláhúzva Az EK-modellben megismert kapcsolatok a relációs modellben küls kulcsok formájában jelennek meg Összes egyedet és kapcsolatot átírtuk relációsémákra, és meghatároztuk a kulcsokat és küls kulcsokat relációs adatbázisséma 2016. szeptember 21. Adatbázisok 6 / 24
E-K diagramból relációséma - egyedek leképezése Minden egyednek létrehozunk egy relációsémát Kulcs: az egyed kulcsattribútuma Könyv(Könyvszám, Szerz, Cím) Olvasó(Olvasószám, Név, Lakcím) 2016. szeptember 21. Adatbázisok 7 / 24
E-K diagramból relációséma - gyenge egyedek leképezése A gyenge entitás relációsémáját b víteni kell a meghatározó kapcsolat(ok)ban szerepl egyed(ek) kulcsával Tulajdonos(Személyiszám, Név, Lakcím) Számítógép(Processzor, Memória, Merevlemez, Személyiszám) 2016. szeptember 21. Adatbázisok 8 / 24
E-K diagramból relációséma - összetett attribútumok leképezése Szétbontjuk (az elemeivel helyettesítjük) Tfh. Lakcím attribútum (Helység, Utca, Házszám) struktúra Ekkor: Olvasó(Olvasószám, Név, Lakcím) helyett Olvasó(Olvasószám, Név, Helység, Utca, Házszám) 2016. szeptember 21. Adatbázisok 9 / 24
E-K diagramból relációséma - többérték attribútumok leképezése Pl. ha egy könyvnek több szerz je van 1 Megadás egyérték attribútumként (az értéknél vessz kkel felsoroljuk a szerz ket) Hátrány, hogy a szerz ket nem tudjuk külön-külön kezelni, valamint sok szerz nem fér el a megadott mez ben 2 Sorok többszörözése (annyi sort veszünk fel egy könyvhöz, ahány szerz je van) 3 Új tábla felvétele Könyv(Könyvszám, Szerz, Cím) helyett Könyv(Könyvszám, cím) Szerz (Könyvszám, Név) 2016. szeptember 21. Adatbázisok 10 / 24
E-K diagramból relációséma - kapcsolatok leképezése Új séma felvétele Neve a kapcsolat neve Attribútumai a a kapcsolódó entitások kulcs attribútumai, valamint a kapcsolat saját attribútumai Ha ezen séma kulcsa megegyezik valamely egyed kulcsával, akkor a kapcsolat és az egyed sémája összevonható 2016. szeptember 21. Adatbázisok 11 / 24
E-K diagramból relációséma - bináris kapcsolatok Bináris kapcsolatok leképezése: 1:1 kapcsolat esetén kiválasztjuk a kapcsolatban részt vev két entitást egyikét (bármelyiket) a kiválasztott entitás sémájába új attribútumként felvesszük a másik entitás kulcs attribútumait, valamint a kapcsolat attribútumait 1:N kapcsolat esetén Az "N" oldali entitás sémájába új attribútumként felvesszük a másik entitás kulcs attribútumait, valamint a a kapcsolat attribútumait N:M kapcsolat esetén új sémát veszünk fel, amelynek attribútumai a kapcsolódó entitások kulcs attribútumai, valamint a kapcsolat saját attribútumai 2016. szeptember 21. Adatbázisok 12 / 24
Feladatleírás - Taxi 2016. szeptember 21. Adatbázisok 13 / 24
EK diagram - Taxi 2016. szeptember 21. Adatbázisok 14 / 24
Relációs adatbázisséma - Taxi Sof r(sof r_id, név, igazolvány_szám, jogosítvány_szám, jogosítvány_lejárat, irsz, város, utca, résztvev i_státusz) Állandós(sof r_id, munkaid ) Beugró(sof r_id, ráérés) Járm (rendszám, típus, márka, megtett_km, szín, fér hely, sof r_id) Üzemanyag(ár, típus, rendszám, üzem_azon) Fuvar(cél_cím, indul_cím, indul_dátumid, útvonal_hossza, útvonal_ideje, sof r_id, rendszám, tarifa_azonosító) Tarifa(tarifa_azonosító, tarifa_neve, km_ára) 2016. szeptember 21. Adatbázisok 15 / 24
Következ hétre normalizálás funkcionális függés redundancia 2016. szeptember 21. Adatbázisok 16 / 24
1. feladat E-K diagram vásárlásokról 2016. szeptember 21. Adatbázisok 17 / 24
Megoldás Vev (Vev kód, Név, Cím) Számla(Számlaszám, Dátum, Vev kód) 2016. szeptember 21. Adatbázisok 18 / 24
2. feladat El fordulhat, hogy egy egyed ugyanabban a kapcsolatban többször vesz részt Példa: egy számítástechnikai kereskedés árul számítógép kongurációkat, de árul külön alkatrészeket is, melyek azonban kon- gurációknak is lehetnek elemei 2016. szeptember 21. Adatbázisok 19 / 24
Megoldás Árucikk(Cikkszám, Cikknév, Tartalmazó_árucikk) 2016. szeptember 21. Adatbázisok 20 / 24
3. feladat Gyenge egyed leképezése A csoportnév nem kulcs (sok cégnél lehet ugyanolyan nev csoport), de ha a kapcsolaton belül a céget is bevesszük az azonosításba, akkor egyértelm lesz, hogy melyik csoportról beszélünk 2016. szeptember 21. Adatbázisok 21 / 24
Megoldás Cég(Cégnév, Cégcím) Csoport(Csoportnév, Csoportcím, Cégnév) 2016. szeptember 21. Adatbázisok 22 / 24
4. feladat 2016. szeptember 21. Adatbázisok 23 / 24
Megoldás Égitest(név, felszíni h mérséklet, méret, mikor, cskód) Hold(név, méret, felszíni h mérséklet, enév) Csillagász(cskód, név, nemzetkód) rszonda(szonda neve, fell tték, nemzetkód) Nemzet(nemzetkód, név) Mérést végez(név, szonda neve, mért érték, zikai mérték) 2016. szeptember 21. Adatbázisok 24 / 24