1 / 48

Normálformák

Normálformák. Adatbáziskezelés. Normálformák. Normálforma: az egyed szerkezeti állapota. 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.

roary-diaz
Download Presentation

Normálformák

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Normálformák Adatbáziskezelés

  2. Normálformák • Normálforma: az egyed szerkezeti állapota

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

  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:

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

  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

  14. Az AUTÓSBOLTbanfennálló anomáliák 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} 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}

  22. BEFIZETÉS{ÖÉRT,BEFIZ}

  23. ALKATRÉSZ{AKÓD,ANÉV,EÁR}

  24. ELADÁS{DÁT,AKÓD,DB}

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

More Related