Normálformák Adatbáziskezelés.

Slides:



Advertisements
Hasonló előadás
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Adatbázisok gyakorlat 5. gyakorlat Adatmodellezés III/IV – Funkcionális függés,
Advertisements

Adatbázis-kezelés Készítette: Asztalos Péter január 12.
Az adatbázis kezelés alapjai
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
ADATBÁZISOK.
Normalizáció A normalizáció egy táblázatszétbontó eljárás, mely ebből adódóan a relációs adatmodell kialakításában van segítségünkre. Hogy miért van erre.
E-R modell, reláció-séma
A normalizálás az adatbázis-tervezés egyik módszere
Adatbázis rendszerek I.
4. gyakorlat Normalizálás.
Anyagadatbank c. tárgy gyakorlat
Adatbázis-kezelés.
Relációs adatbázisok készítése
Függőségek, normálformák
SQL Structured Query Language
Funkcionális függés Redundancia 1NF, 2NF, 3NF
Adatbázis kezelés. Hierarchikus modell Legrégebbi modell, ma már nem használatos. Az adatokat fákban tároljuk, ahol minden pont a szegmens adatokat, és.
Számvitelszervezés Az adatmodelltől az adatbányászatig SZIE-KVA, október 15.
Az egyed-kapcsolat modell
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Adatbázisok gyakorlat 6. gyakorlat Gyakorlás, kötelezőprogram.
Microsoft Access I. Készítette: Rummel Szabolcs
Microsoft Access V. Készítette: Rummel Szabolcs Elérhetőség:
Az adatbázissal kapcsolatos tudnivalók
16. Tétel. Adatbázis: Olyan adatgyűjtemény, amely egy adott feladathoz kapcsolódó adatokat szervezett módon tárolja, és biztosítja az adatokhoz való hozzáférést,
Adatbázis rendszerek II.
Halmazok, relációk, függvények
az MSAccess programmal
Adatbázis rendszerek I
Adatbázis-kezelés
1Gazdasági informatika II Gazdasági informatika II. Gyurkó György.
Az adatfeldolgozás forrásai
Adatbáziskezelés Normálformák.
Relációs algebra. A relációs adatbáziskezelő nyelvek lekérdező utasításai a relációs algebra műveleteit valósítják meg. A relációs algebra a relációkon.
*** HALMAZOK *** A HALMAZ ÉS MEGADÁSA A HALMAZ FOGALMA
Tervezés, Normalizálás
Térkép. Mi az adat? Minden információ, amit tárolni kell. Minden információ, amit tárolni kell.  szám  szöveg  dátum  hang  kép, stb.
Statisztika, kutatásmódszertan I.
Adatbázisok Adatbázis: adatok gyűjteménye, amelyeket az adatbázis-kezelő rendszer (DBMS –Database Management System) kezel. Kezelt adatrendszer → adatbázis.
Mérnöki informatika I.év
Dr. Krauszné Dr. Princz Mária Adatbázis rendszerek I.
Adatbázis-kezelés JAG,
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
SQL nyelv részei DDL (Data Definition Language – Adat Definiáló Nyelv)  relációs séma séma kezelő utasítások: adatbázisok, táblák létrehozása, módosítása.
Adatbázis kezelés.
Adatbázis-kezelés.
Adatbázis-kezelés Probléma: az excel kezelhetetlen túl sok adat esetén
Adatbázisok Fleiner Rita, Tankönyv:
Adatbázis-kezelés Készítette: Asztalos Péter január 12.
Adatbázis-kezelés.
Adatbázis alapfogalmak
(A logikai adatmodell kialakítása)
Relációs algebra Relációs sémák tervezése
Normálformák Takács Gábor mérnök informatikus, okl. mérnöktanár
Adatbázis-kezelés. Alapfogalmak Adat: –észlelhető, felfogható ismeret –jelsorozat –valakinek, vagy valaminek a jellemz ő je –tény, közlés Információ:
Információs rendszer fejlesztése 2. előadás
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Adatbázisok használata
Adatbázis-kezelés Alapfogalmak Gimnázium Óbecse.
Adatbáziskezelés. Adatbáziskezelés az ACCESS programmal 2 A relációs adatbázis fogalmai A relációs adatbázis: egymással összefüggésben lévő adatokat tartalmazó.
Adatbázisszintű adatmodellek
Gazdasági informatika II (SZIE GTK GVAM 1. évfolyam) 2009/2010. tanév 2. félév.
Összeállította: Juhász Tibor – 2006 – Adatbázis- kezelés 3. Grafikus normalizálás.
Összeállította: Juhász Tibor – 2006 – Adatbázis- kezelés 1. Alapfogalmak.
Alapfogalmak Adat: rögzített ismeret
Adatbáziskezelés.
Logisztikai projekt - gyakorlat Adatbázis-elmélet
Relációs adatmodell, normálformák
Adatbázis-kezelés 2. Relációs adatbázisok.
Többértékű függőségek
Előadás másolata:

Normálformák Adatbáziskezelés

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 52.02.16 Kiss Pál Lakatos 58.08.08

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

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 52.02.16 Kiss Pál Lakatos 58.08.08

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

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

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ú

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

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}

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.

Autósbolt Dátum Alkatrész név Alkatrész kód Egységár Darab Összérték 88.02.03 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

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}

Írjuk fel az adatbázist 1NF-ben DÁT ANÉV AKÓD EÁR DB ÖÉRT BEFIZ 88.02.03 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 88.02.04 4620 3620 3 88.02.05 3600 2600 Vízpumpa P-12 1100

Az AUTÓSBOLTban fennálló anomáliák DÁT ANÉV AKÓD EÁR DB ÖÉRT BEFIZ 88.02.03 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 88.02.04 4620 3620 3 88.02.05 3600 2600 Vízpumpa P-12 1100 bővités módosítás tőrlés

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

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

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

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

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

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

ÁRBEVÉTEL{DÁT,ÖÉRT} DÁT ÖÉRT 88.02.03 4140 88.02.04 4620 88.02.05 3600 88.02.06

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

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

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 88.02.04 3 88.02.05 P-12

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

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)

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

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}

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

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}

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}

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

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

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}

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

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

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

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

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

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}

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

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}

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

A RELÁCIÓS ALGEBRA

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

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  =

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 - =

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 =