Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
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 RS 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 =
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.