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

Normálformák Adatbáziskezelés.

Hasonló előadás


Az előadások a következő témára: "Normálformák Adatbáziskezelés."— Előadás másolata:

1 Normálformák Adatbáziskezelés

2 Normálformák Normálforma: az egyed szerkezeti állapota NÉV
SZAKKÉPZETTSÉG SZÜLETÉSI DÁTUM Nagy Zsolt Gépészmérnök közgazdász Kiss Pál Lakatos

3 Normálformák Normálformák: 0.normáforma (0NF vagy N1NF)
1.normálforma (1NF) 2.normálforma (2NF) 3.normálforma (3NF)

4 0. normálforma NÉV SZAKKÉPZETTSÉG SZÜLETÉSI DÁTUM Nagy Zsolt
R reláció 0. normálformában van, ha létezik olyan másodlagos attribútum, amely a kulcstól funkcionálisan független A táblázat ismétlődő ismereteket tartalmaz NÉV SZAKKÉPZETTSÉG SZÜLETÉSI DÁTUM Nagy Zsolt Gépészmérnök közgazdász Kiss Pál Lakatos

5 1. normálforma R reláció 1. normálformájú, ha minden másodlagos tulajdonság funkiconálisan függ a kulcstól A táblázat minden sorában pontosan egy attribútumérték van

6 Az előző példa 1NF-ben: NÉV SZAKKÉPZETTSÉG SZÜLETÉSI DÁTUM Nagy Zsolt
Gépészmérnök Közgazdász Kiss Pál Lakatos

7 2. normálforma R reláció 2. normálformájú, ha 1-es normálformában van, és minden másodlagos attribútuma a reláció bármely kulcsától teljesen függ Megjegyzések Ha az R kulcsa egyetlen attribútumból áll, akkor 2NF típusú Ha nincsen R-ben másodlagos attribútum, akkor 2NF típusú

8 3. normálforma R reláció 3. normálformájú, ha 2-es normáformában van, és egyetlen másodlagos attribútuma sem függ tranzitíven valamely kulcstól

9 Több kulcsjelölt esete
Az 1. normálformájú reláció Boyce-Codd normálformájú (BCNF típusú), ha minden generátora egyben kulcs is Megyjegyzések Csupakulcs esete ÜGYELET {ki,mikor} Több kulcsjelölt esete SZÁMLATÉTEL {szlaszám,sorszám,cikkszám,mennyi}

10 Normalizálás Cél: a tárolási és karbantartási káosz megszüntetése – veszteségmentesen Normalizálás – normálforma dekompozíció A kedvezőtlen normálformájú egyedet lebontjuk több kívánt normálformájú egyedre.

11 Autósbolt Dátum Alkatrész név Alkatrész kód Egységár Darab Összérték
Kuplung TX5 1500 2 Elosztófej XB-3 150 6 Kondenzátor ET-2 30 4 Fékhenger F-6 120 1 Összérték 4140 Befizetés 3140

12 0. lépés Legyenek a tulajdonságok :
DÁT ANÉV AKÓD EÁR DB ÖÉRT BEFIZ A következő relációt állítjuk össze: AUTÓSBOLT {DÁT,ANÉV,AKÓD,EÁR,DB,ÖÉRT,BEFIZ}

13 Írjuk fel az adatbázist 1NF-ben
DÁT ANÉV AKÓD EÁR DB ÖÉRT BEFIZ Kuplung TX-5 1500 2 4140 3140 Elosztófej XB-3 150 6 Kondenzátor ET-2 30 4 Fékhenger F-6 120 1 4620 3620 3 3600 2600 Vízpumpa P-12 1100

14 Az AUTÓSBOLTban fennálló anomáliák
DÁT ANÉV AKÓD EÁR DB ÖÉRT BEFIZ Kuplung TX-5 1500 2 4140 3140 Elosztófej XB-3 150 6 Kondenzátor ET-2 30 4 Fékhenger F-6 120 1 4620 3620 3 3600 2600 Vízpumpa P-12 1100 bővités módosítás tőrlés

15 Kulcs = {DÁT,AKÓD} DÁT AKÓD DB ÖÉRT  BEFIZ ANÉV EÁR

16 Tehát: A másodlagos attribútumok nemcsak a kulcstól függnek, hanem annak részhalmazaitól is (részleges függőségek) Van benne tranzitív függőség Az 1000 FT a függés

17 A felbontás sémája DÁT AKÓD DB ANÉV EÁR ÖÉRT BEFIZ

18 Felbontás DÁT ÖÉRT BEFIZ DÁT AKÓD DB AKÓD ANÉV EÁR NAPIFORG ELADÁS
ALKATRÉSZ

19 NAPIFORG{DÁT,ÖÉRT,BEFIZ}
4140 3140 4620 3620 3600 2600 Ez a táblázat 2NF-ben van, de nincsen 3NF-ben

20 Bontsuk fel két táblázatra
ÖÉRT BEFIZ DÁT ÖÉRT BEFIZETÉS ÁRBEVÉTEL

21 ÁRBEVÉTEL{DÁT,ÖÉRT} DÁT ÖÉRT 4140 4620 3600

22 BEFIZETÉS{ÖÉRT,BEFIZ}
4140 3140 4620 3620 3600 2600

23 ALKATRÉSZ{AKÓD,ANÉV,EÁR}
TX-5 KUPLUNG 1500 XB-3 ELOSZTÓFEJ 150 ET-2 KONDENZÁTOR 30 F-6 FÉKHENGER 120 P-12 VÍZPUMPA 1100

24 ELADÁS{DÁT,AKÓD,DB} DÁT AKÓD DB 88.02.03 TX-5 2 XB-3 6 ET-2 4 F-6 1
3 P-12

25 A négy táblázat mindegyike 3NF-ben van
Megmaradtak a funkcionális függőségek Megszüntettük a redundás adattárolást Eltüntettük a karbantartási anomáliákat

26 Az adatmodell dokumentálása
Adatbázis neve, célja, környezete Diagram (a kapcsolatok ábrázolása ) Egyedek listája (miben mit tárolok) Kapcsolatok felsorolása Rekordleírás Minden tulajdonság szerepe Opcionalitás, egyediség Értékek,korlátozások Tulajdonságok (származtatás)

27 Az ÉTTEREM adatbázis normalizálása
A rendszer ismertetése: Az étteremben különféle ételeket és italokat rendelhetünk, amelyeket bizonyos nyersanyagokból recept szerint készítenek el A fogyasztás végén számla szerint fizetünk

28 Az adatbázis létrehozása
RECEPT {azonosító,elnevezés,ár,tipus, tipnév,akód,név,egysár,mértegys, szüksmenny} SZÁMLA {szlaszám,dátum,azonosító, elnevezés,ár,rendmenny,érték,végösszeg}

29 Lépések Mintasorok készítése Kulcsok meghatározása Normalizálás

30 RECEPT kulcsa = {azonositó, akód}
Igazak az alábbi funkcionális függőségek {azonosító}{elnevezés,ár,tipus,tipnév} {akód}{név,egysár,mértegys} {azonosító,akód}{szüksmenny}

31 SZÁMLA kulcsa = {szlaszám, azonosító}
Igazak az alábbi funkcionális függőségek {szlaszám,azonosító}{rendmenny} {szlaszám}{dátum,végösszeg} {azonosító}{elnevezés,ár}

32 Megjegyzések érték = ár * rendmenny Számolható, nem tároljuk
végösszeg =Σ érték Számlaszámra összegezve Számolható, de kerekítve tároljuk a pénzügyi mozgásokat

33 A teljes függőségek alapján
A RECEPT 3 relációra bomlik A SZÁMLA 3 relációra bomlik 1 reláció közös, hiszen 1:1 kapcsolatban állnak egymással

34 A relációk ÉTLAP {azonosító,elnevezés,ár,tipus, tipnév} ANYAG {akód,név,egysár,mértegys} RECEPT {azonosító,akód,szüksmenny} SZÁMLAFEJ {szlaszám,dátum,végösszeg} ÉTLAP {aznosító,elnevezés,ár} SZÁMLATÉTEL{szlaszám,azonosító, rendmenny}

35 Ezzel 2NF-ra hoztuk mindegyik táblát
De van egy tranzitív függés az ÉTLAP táblában: {azonosító}{tipus} és {tipus}{tipusnév} {azonosító}{tipnév} A többi tábla 3NF-ban van

36 A tranzitív függőség megszüntetése
ÉTLAP {azonosító, elnevezés, ár, tipus} FAJTA {tipus,tipnév} Szótárfájl

37 Minden nyíl az N:1 kapcsolatot jelenti
Kapcsolati ábra Minden nyíl az N:1 kapcsolatot jelenti

38 tipus FAJTA tipnév azonosító ÉTLAP elnevezés ár tipus szlaszám SZÁMLAFEJ dátum végösszeg akód ANYAG név egysár mértegys azonosító akód RECEPT szüksmenny szlaszám azonosító SZÁMLATÉTEL rendmenny

39 Technikai adatok Az ÉTLAP van logikai típusú tulajdonsága A SZÁMLAFEJ kifizet logikai típusú tulajdonsága

40 Bővithetőség BESZERZÉS {akód,dátum,beár,menny} ANYAG {akód,név,egysár,mértegys, készlet} SZEMÉLY {kódszám,neve,poszt} BEOSZTÁS {poszt,jelentés} CSAPAT {dátum,kódszám}

41 Bővithetőség {dátum,sorszám}{kódszám} Ahol a sorszám az asztal egyedi azonosítója Nem igaz viszont, hogy a dátum és a kódszám meghatározná a sorszámot

42 Az új egyedek ASZTAL{sorszám,hányfős} KISZOLGÁL{dátum,sorszám,kódszám} Ezért a számlafej így módosul SZÁMLAFEJ{szlaszám,dátum,végösszeg,sorszám}

43 Áttekintő kapcsolati ábra
FAJTA ÉTLAP RECEPT ANYAG BESZEREZ SZTÉTEL SZFEJ SZEMÉLY BEOSZT ASZTAL KISZOLG CSAPAT

44 A RELÁCIÓS ALGEBRA

45 Meghatározás A relációs adatbázis kezelő nyelvek lekérdezési lehetősége A relációs algebra műveletein alapszik Unió Különbség Descartes szorzat Projekció Szelekció Hányados Metszet Összekapcsolás Természetes összekapcsolás

46 Műveletek: Unió Unió (jele:  ) Legyen R és S két n-ed fokú reláció uniójuk az R  S szintén n-ed fokú reláció Sorai vagy az R-nek vagy az S-nek vagy mindkettőnek elemei R A B C a b c b d e f c b S D E F b d e RS a b c b d e f c b =

47 Műveletek: Különbség Külünbség (jele: – ) Legyen R és S két n-ed fokú reláció R – S különbsége szintén n-ed fokú reláció Sorai az R-nek elemei de az S-nek nem R A B C a b c b d e f c b S D E F b d e R-S a b c f c b - =

48 Műveletek: Descartes-szorzat
Descartes-szorzat (jele: × ) Legyen R n-ed , S m-ed fokú reláció Descartes-szorzatuk az az (n+m)-ed fokú R × S Minden elem első részét az R-ből, második részét pedig az S-ből vesszük R A B C a b c b d e f c a S D E F b d e F c b RxS A B C D E F a b c b d e a b c f c b b d e b d e b d e f c b f c a b d e f c a f c b x =


Letölteni ppt "Normálformák Adatbáziskezelés."

Hasonló előadás


Google Hirdetések