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.

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
ADATBÁZISOK.
Informatika I. 6. Adattábla függvények, érzékenységi vizsgálatok.
A normalizálás az adatbázis-tervezés egyik módszere
Adatbázis rendszerek I.
4. gyakorlat Normalizálás.
Adatbázis-kezelés.
Relációs adatbázisok készítése
EXCEL TÁBLÁZATKEZELŐ ALKALMAZÁS
2. GYAKORLAT E-K modellből relációs adatbázisséma.
Függőségek, normálformák
Adatbázis kezelés Adatbázis tervezés.
Leképzési szabályok.
Adatbázisok. Alapfogalmak Az adatbázis (AB) fogalma alatt adatok halmazát értjük, amelyet egyének, csoportok, vállalatok használhatnak. Az adatbázisokban.
Adatbáziskezelés.
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.
Adatbázis (alapfogalmak).
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.
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
Microsoft Access I. Készítette: Rummel Szabolcs
Microsoft Access V. Készítette: Rummel Szabolcs Elérhetőség:
Adatbázis-kezelés.
Az adatbázissal kapcsolatos tudnivalók
Adatbáziskezelés az MSAccess programmal Makány György 2. rész: Adattáblák létrehozása külső adatforrásból.
az MSAccess programmal
1Gazdasági informatika II Gazdasági informatika II. Gyurkó György.
Nézettáblák létrehozása, módosítása és törlése
Tervezés, Normalizálás
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.
Dr. Krauszné Dr. Princz Mária Adatbázis rendszerek I.
Adatbázisok és Adatbázis-kezelő rendszerek Páll Boglárka
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 Készítette: Asztalos Péter január 12.
Adatbázis-kezelés.
Kulcsok meghatározása a táblákban
Adatbázis alapfogalmak
(A logikai adatmodell kialakítása)
Relációs adatbázissémák
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ó:
Gáspár Bencéné Dr. Vér Katalin
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ázis:  Valamilyen szempont szerint rendszerezett adathalmaz.  Adatbázis kezelés:  Adatok tárolása  Műveletek végzése az adatbázison; (Adatok.
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.
Adatbázisok 5. gyakorlat. Jövő hét utáni héten ZH! (Adatmodellezés, normalizálás) és kötprog doksi leadás (adatmodell rész)
Kovács Gergely Péter A relációs adatmodell
Alapfogalmak Adat: rögzített ismeret
Kovács Gergely Péter Az egyed-kapcsolat modell
Adatbáziskezelés.
Kovács Gergely Péter Bevezeté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.
Adatbázis-kezelés.
Többértékű függőségek
Előadás másolata:

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 szükség? Remélem ez hamarosan mindenki számára egyértelmű lesz!

A táblázatkezelés rohamos terjedésével egyre többen vannak azok a felhasználók, akik az adatokat táblázatos formában el tudják képzelni, azaz egy egyszerű, egyetlen táblázatból álló relációs (=táblázatos) adatbázist könnyen elképzelnek. Tegyük fel, hogy egy adatbázisban a dolgozók azonosítóit, neveit, címüket, foglalkozásukat, fizetésüket szeretnénk nyilván tartani. Sokak fejében hamar összeáll a következő oldalon látható táblázat >>> Amikor még csak egy táblázatunk van

Miért előnyös több, egymással kapcsolatban lévő táblázatból felépíteni az adatbázist? A táblázat adatit jól megfigyelve fölösleges ismétlődéseket un. redundanciát figyelhetünk meg. A pék szó a maga es fizetésével többször is előfordul. A redundancia nemcsak fölösleges adattárolást eredményez, hanem módosítási, bővítési, törlési anomáliát is okozhat!

Módosítási anomália: Pék dolgozóink bérének re való emelésekor a táblázatban több (jelen esetben 3*) helyen kell módosítani az adatértékeket. * nagyobb adatbázisoknál ez a szám jóval nagyobb is lehetne. Az ideális eset az, ha az adatbázisok frissítését egyetlen egy módosítással el lehetne érni.

Bővítési anomália: Egy új foglalkozás felvételekor (pl. Kukta es fizetéssel) a többi mező mindaddig üresen maradna, amíg egy ilyen dolgozót fel nem veszünk. Ezt bővítési anomáliának nevezzük. Példánkban az azonosító oszlop töltené be az elsődleges kulcs szerepét. Az adatbáziskezelő rendszerek nem is engedik meg az elsődleges kulcs mező üresen hagyását!

Törlési anomália: C. Icus kilépésével, sorának törlésével, olyan fontos adatok is vesznének, minthogy a Konyhalányok fizetése A konyhalányoknak mennyit szoktunk fizetni???

A megoldás: 1 táblázat helyett 2, egymással kapcsolatban lévő táblázat létrehozása. Egyszerű elsődleges kulcsok Ideiglenes kulcs Az anomáliát megszüntetni nem lehet, de minimálissá tettük!

Egy táblázat szétbontását több, egymással kapcsolatban álló kis táblázatra józan ésszel is el lehet végezni, de van rá tudományos módszer is ez a normalizáció (jegyezzük meg, vannak akik nem nevezik táblázat szétbontó eljárásnak a normalizációt, csupán az EER-modell minőségének ellenőrzésére szolgáló módszert látnak benne). A normalizáció során un. normálformákon kell keresztül vezetnünk a kiinduló relációnkat. Az adatbázis normáltságának 3 (esetleg 4) foka van: - első normálforma - második normálforma - harmadik normálforma - (negyedik normálforma - nem foglalkozunk vele) Normálformák Ismerjük meg a normálformákat egy példán keresztül!

Példa Készítsünk nyilvántartó programot egy kis könyvtárnak, mely szeretné nyilvántartani ki, mikor, melyik könyvet kölcsönözte, visszahozta-e, a könyv kiadóját, könyv kiadójának címét, stb. A nyilvántartani kívánt adatok: szemigszám, név, cím, leltáriszám, könyvcím, kiadó, kiadócím, kiviteldátuma, visszahozta-e,

Az első normálforma (1. NF) - oszlopok száma és sorrendje minden sorban azonos - minden oszlop csak meghatározott típusú értéket vehet fel - minden attribútum, csak egyetlen értéket vehet fel - minden sorhoz egyedi kulcs tartozik, mely egyértelműen azonosítja (!!!nincs két azonos sor!!!) - a reláció(k)nak neve van A példánk a következőképp festene 1. NF-be: Kölcsönzés(szemigszám, név, cím, leltáriszám, könyvcím, kiadó, kiadócím, kiviteldátuma, visszahozta-e) !!!Figyeljük meg az összetett elsődleges kulcsot!!!

Az második normálforma (2. NF) - 1. NF-ben van - a nem kulcs attribútumok funkcionálisan teljesen függnek az elsődleges kulcstól (magyarán szólva a teljes elsődleges kulcstól függnek a többiek!) A teljes és részleges funkcionális függőség megállapításához egy un. függőségi diagrammot kell rajzolnunk: szemigszám leltáriszám kiviteldátuma név cím könyvcím kiadó visszahozta-e Teljes funkcionális függés! Az egész elsődleges kulcstól függ! Megmaradhat! Részleges funkcionális függés esetén az attribútumok csak az elsődleges kulcs egy részétől függenek!!! Ki kell küszöbölni! kiadócíme

szemigszám leltáriszám kiviteldátuma név cím könyvcím kiadó visszahozta-e Hogyan bontsuk a relációnkat? kiadócíme Kölcsönzés(szemigszám, leltáriszám, kiviteldátuma, visszahozta-e) Tag(szemigszám, név, cím) Könyv(leltáriszám, könyvcím, kiadó, kiadócím) Máris 3 relációnk van, melyek un. idegenkulcsokon keresztül kap- csolódnak össze. Ezek 1:N kapcsolatokat jelentenek. A kölcsönzés reláció szemigszámát kikeresve a tag relációból, megtudhatjuk a kölcsönző tag nevét, címét. Hasonlóan a leltáriszámból a könyv címére, kiadójára, és a kiadó címére tudunk következtetni!

szemigszámleltáriszámkiviteldátumavisszahozta-e AF070768BNC Nem PC444978GBT Ja AF070768GBT Nem szemigszámnévcím AF070768B. JózsefKv., Szent I. 2 PC444978G. ÁgiBp., Vámos u. 7 leltáriszámkönyvcímkiadókiadócíme BNC299A teknősbékaBúzaBp., János út 5 GBT187A csigabigaÁrpaPécs, Répa u. 6 AUD111Állatok világaBúzaBp., János út 5

Az harmadik normálforma (3. NF) - 2. NF-ben van - a nem kulcs attribútumok közvetlenül az elsődleges kulcstól függenek szemigszám leltáriszám kiviteldátuma név cím könyvcím kiadó kiadócíme visszahozta-e szemigszám leltáriszám A kiadócíme attribútum nem a közvetlenül az elsődleges kulcstól függ!

Egy nem túl szerencsés eset szemigszám leltáriszám kiviteldátuma név cím könyvcím kiadó visszahozta-e szemigszám leltáriszám kiadócím kiadó A problémát a kiadó idegen és elsődleges kulcs okozza! Meglehetősen hosszú is lehet egy kiadó neve. Ezért nem célszerű ez alapján összekapcsolni két táblát. Megoldás>>>

szemigszám leltáriszám kiviteldátuma név cím könyvcím kiadókód visszahozta-e szemigszám leltáriszám kiadókód kiadó kiadócíme A megoldást egy kiadókód mező szolgáltatja, mellyel jobb híján pl. 1-től kezdve elkezdjük sorszámozni a kiadókat!

szemigszámleltáriszámkiviteldátumavisszahozta-e AF070768BNC Nem PC444978GBT Ja AF070768GBT Nem szemigszámnévcím AF070768B. JózsefKv., Szent I. 2 PC444978G. ÁgiBp., Vámos u. 7 leltáriszámkönyvcímkiadókód BNC299A teknősbéka1 GBT187A csigabiga2 AUD111Állatok világa1 kiadókódkiadócíme 1Bp., János út 5 2Pécs, Répa u. 6