Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Relációs adatmodell, normálformák

Hasonló előadás


Az előadások a következő témára: "Relációs adatmodell, normálformák"— Előadás másolata:

1 Relációs adatmodell, normálformák
Kilián Imre (Markó Tamás) PTE, 2008.

2 Történeti adalékok A relációs adatmodell elméletét Codd cikke alapozta meg (1970) Elterjedésében nagy szerepet játszott az Ashton-Tate nevű cég által PC-kre kifejlesztett dBase nevű adatbáziskezelő Jelenleg gyakorlatilag egyeduralkodó

3 Relációs adatmodell Az egyedek kapcsolata nem épül bele az adatmodellbe A hangsúly a tulajdonságok megadásán van Az egyedet táblázattal adjuk meg az oszlopok a tulajdonságok (attribútumok) a sorok az egyed előfordulásai (rekordok)

4 Példa a relációs adatmodellre
A DOLGOZÓ tábla:

5 A relációs adatmodell előnyei
Egyszerűség a felhasználó számára könnyen érthető egyszerűen programozható Precíz matematikai háttérrel rendelkezik

6 A relációs adatmodell hátrányai
Körülményes a táblák sorainak egymáshoz való hasonlítása Ilyen az időben változó adatok kezelése (pl. a dolgozók egyes időszakokban állandó alapfizetése). A különböző táblákban lévő, de összetartozó adatokat minden egyes felhasználáskor össze kell kapcsolni

7 A Descartes-szorzat Direkt szorzatnak is hívják
A1, A2, … An adott halmazok A1A2  …  An = = {(a1, a2, … an)a1A1, a2A2, … anAn} A Descartes-szorzat rendezett elem-n-esek halmaza: A1A2A2A1 Az elem-n-esek neve angolul tuple

8 A reláció 1. R  A1A2  …  An reláció
n változós, n elemű, n-ed fokú reláció  a reláció minden eleme különböző  a reláció elemeinek nincs meghatározott sorrendje (nincs egy elem után következő elem)

9 A reláció 2. Az A1, A2, … An halmazok a reláció tartományai (domain)
R elemeinek száma (a tábla sorainak száma) a reláció számossága reláció = tábla = egyedtípus domain = oszlop = mező = tulajdonság (attribútum) a reláció eleme = sor = egyed-előfordulás = rekord

10 A kapcsolat lehetősége relációs adatbázisban: közös oszlopok
A kapcsolat maga nem tárolódik, azt minden lekérdezésnél külön meg kell adni!

11 Kulcs Az attribútumok egy részhalmaza (egy vagy több tulajdonság), ami
egyértelműen meghatározza az egyed egy előfordulását ha bármelyik tulajdonságot elhagyjuk belőle, az egyértelműség már nem teljesül A kulcs a tábla minden sorára különböző Egy táblának több kulcsa is lehet Egyszerű kulcs: egy tulajdonságból áll Összetett kulcs: több tulajdonságból áll Elsődleges kulcsnak is hívják (primary key, Primärschlüssel)

12 Elsődleges és másodlagos attribútumok
Elsődleges attribútum: szerepel a kulcsban (része a kulcsnak) Másodlagos attribútum: nem szerepel kulcsban (nem része a kulcsnak)

13 Külső kulcs Az attribútumok egy részhalmaza (egy vagy több tulajdonság), ami egy másik táblában kulcsot alkot Alapvetően táblák összekapcsolására szolgál A külső kulcs értéke lehet azonos is a tábla különböző soraiban Egy táblának több másik táblához is lehet külső kulcsa Egy táblának egy másik táblához több külső kulcsa is lehet Egy táblának saját magához is lehet külső kulcsa Idegen kulcsnak is hívják (foreign key, Fremdschlüssel)

14 Funkcionális függőség
Az R reláció B1, …, Bm attribútumai funkcionálisan függenek a C1, …, Ck attribútumoktól, ha valahányszor megegyezik két sor a C1, …, Ck helyeken (oszlopokban), mindannyiszor megegyezik a B1, …, Bm helyeken is. Jelölése: C1, …, Ck  B1, …, Bm A kulcstól a másodlagos attribútumok funkcionálisan függenek

15 Teljes függőség Az R reláció B1, …, Bm attribútumai teljesen függenek a C1, …, Ck attribútumoktól, ha funkcionálisan függenek tőlük de ha csak egyet is elhagyunk a C1, …, Ck attribútumok közül, a funkcionális függőség már nem teljesül Részleges függőség: olyan funkcionális függőség, amely nem teljes.

16 Normálformák Az adatbázis szerkezetének “tisztaságát”, szabályosságát adják meg Többfajta normálforma is létezik A következőkben felsorolt normálformákon kívül is vannak egyéb normálformák Nem biztos, hogy a magasabb rendű normálformának eleget tevő adatbázis jobban használható!

17 Az első normálforma 1. Az R reláció első normálformában (1NF) van, ha minden oszlopában pontosan egy attribútumérték áll. Másként: egy mező sem tartalmaz két, önmagában is értelmes értéket A relációs adatbáziskezelő programokkal nem is lehet olyan adatbázist definiálni, ami megsértené az első normálformát

18 Az első normálforma 2. Az első normálformára hozás úgy is megoldható, hogy a SZAKKÉPZETTSÉG oszlop helyett egy külön táblát használunk, ami 1:N kapcsolatban van az eredetivel.

19 A második normálforma Az R reláció második normálformában (2NF) van, ha első normálformában van és minden másodlagos attribútum teljesen függ a kulcstól Ha egy reláció első normálformában van és a kulcs egyszerű, akkor a reláció második normálformában is van.

20 Problémák a 2NF hiánya esetén
Közös néven: változtatási anomáliák Gyakorlati szempontból ezek rejtett hibalehetőségek Törlési anomália: olyan információt is elveszíthetünk, amit nem akartunk törölni Módosítási anomália: bizonyos adatmódosításokat több rekordban is el kell végezni Beírási anomália: nem lehet új rekordot létrehozni, ha abban bizonyos mezőknek még nincs értéke

21 Példa: függőségi viszonyok az ELADÁS táblában (nem 2NF)
Szla_kelt Vevő_név Szla_szám Vevő_cím Term_kód Szla_össz Term_név mennyiség Term_érték Egys_ár Forrás: Szelezsán J: Adatbázisok

22 A 2NF elérése a tábla szétdarabolásával
Szla_szám Szla_össz Vevő_név Szla_szám Term_kód Szla_kelt Vevő_cím mennyiség Term_kód Term_név Egys_ár Term_érték

23 A harmadik normálforma
Az R reláció harmadik normálformában (3NF) van, ha második normálformában van és a másodlagos attribútumok között nincs funkcionális függés

24 A 3NF elérése a tábla szétdarabolásával
Szla_szám Szla_szám Szla_kelt Szla_össz Vevő_név Szla_kelt Szla_össz Vevő_név Vevő_név Vevő_cím Vevő_cím

25 VÉGE


Letölteni ppt "Relációs adatmodell, normálformák"

Hasonló előadás


Google Hirdetések