Adatbáziskezelés
Demeter István-Hunor
Adatbáziskezelés
Adatbáziskezelés .............................................................................................................. 1 Alapfogalmak ............................................................................................................... 2 Adatmodellek ............................................................................................................... 3 Relációs adatmodell...................................................................................................... 3 Attribútumok közötti függőségek................................................................................. 5 Normál formák ............................................................................................................. 5 Feladat .......................................................................................................................... 7 Gyakorlatok ................................................................................................................ 11
1 / 12
Adatbáziskezelés
Demeter István-Hunor
Alapfogalmak
Adat Információ: felhasználható adat, döntés megtételére alkalmas adat, értelmezett adat. - világ = anyag + energia + információ Adatfeldolgozás (formalizálható) - adatmodell, adatséma Adatbázis: adatok kapcsolataikkal együtt való ábrázolása, tárolása. - központi erőforrás Adatbázis-séma: a valóság egy részének tükörképe. Adatmodell történet - hierarchikus, hálós adatbázis: gráfok, diagrammok - szemantika: verbálisan, szavak segítségével - matematikai jellegű: szintaktikusan pontos, matematikai struktúrák; Codd relációs adatmodellje (1970), objektumorientált Adatbáziskezelő rendszer - szoftver adatfeldolgozásra Adatbáziskezelő rendszer fő funkciói - adatdefiníció - lekérdezések Adatbáziskezelő rendszer mellékfunkciói - adatvédelem, adatbiztonság - integritási feltételek ellenőrzése - szinkronizáció - adatbázis statisztikák, naplózás Adatbázis adminisztrátor: ő felelős mindenért ANSI/SPARC modell - ANSI (American National Standards Institute) - SPARC (Standards Planning and Requirements Committe) - Logikai nezet - Fizikai nézet - A modell: alkalmazás -> Külső nézet -> Koncepcionális séma -> Belső nézet (tárolt AB) - programok és adatok függetlensége 2 / 12
Adatbáziskezelés
Demeter István-Hunor
Adatmodellek
Adatmodellek alapelemei: Egyed, egyedtípus: minden dolog, ami minden más dologtól megkülönböztethető és amiről adatok tárolhatók; egyedtípus: absztraktizációs szint + előfordulási szint. - egyedhalmaz: egy adott egyed által képviselt konkrét elemek halmaza - egyed előfordulása, értéke: az egyed egy konkrét értéke - rekordtípus = egyedtípus: a legkisebb címezhető érték (hálós, hierarchikus modellben) - egyed-szupertípus (generalizáció), egyed-altípus (specializáció), „is-a” reláció - aggregáció, „part-of” reláció Tulajdonság: az egyed egy jellemzője, ami megadja az egyed egy részletét - kulcs: egyértelműen meghat. az egyed egy értékét; egyszerű, összetett, ha nem létezik bevezetjük - többértékű és összetett tulajdonságok (végzettség, lakcím) - egyedtípus belső szerkezete: az egyedet leíró véges számú tul. Kapcsolat: egyedek, vagyis valós objektumok közötti viszony - kapcsolat foka: hány egyed között teremt viszonyt - kapcsolatok fajtái: 1:1, 1:N, M:N - kardinalitás: max és min Kapcsolatok ábrázolása - vonalas - Chen féle - „varjú-lábas” Adatmodell: egyedek, tulajdonságok és kapcsolatok halmaza, amely absztrakt módon tükrözi a valós objektumoknak, azok jellemzőinek és viszonyainak elvont kategóriáját. Hálós adatmodell Hierarchikus adatmodell Relációs adatmodell
3 / 12
Adatbáziskezelés
Demeter István-Hunor
Relácio: Descartes szorzat D1, D2, ..., Dn, (v1, v2, ..., vn), R részhalmaza Táblázat, tábla: reláció = rekordok halmaza, attribútumokból épül fel Rekord, bejegyzés: tábla egy sora Attribútum: tábla oszlopa; egy változó, amely az oszlopba írt értékeket veszi fel, {A1, A2, ..., An} Tartomány: az attribútum értékkészlete Jelölés: A = { A1, A2, ..., An } – attribútumok R reláció foka: az attribútumok száma; n-ed fokú vagy n változós Reláció röviden vagy a reláció sémája: R(A1, A2, ..., An) Adatbázis: tábla vagy több tábla Kulcs: Az A attrib. egy K részhalmaza, ahol 1) A K értékei az R rel. minden rekordját egyértelműen meghatározák 2) Ha egyetlen attribútumot is elhagyunk K-ból, akkor az 1) feltétel már nem teljesül Egyszerű és összetett kulcs Elsődleges attribútumok: a kulcsot alkotó attribútumok Másodlagos attribútumok: a többi Kulcs jelölése: K {…, …, …, …} Külső kulcs: egy reláció azon attribútumai, amelyek egy másik relációban kulcsot alkotnak. Kapcsolat: a kulcsokon és külső kulcsokon keresztül adott Külső kulcs ugyanabban a táblában: rekurzív kapcsolat Külső kulcs párhuzamos kapcsolatban Külső kulcsok több táblából: egy relációnak több relációval van kapcsolata
4 / 12
Adatbáziskezelés
Demeter István-Hunor
Attribútumok közötti függőségek
Funkcionális függőség: Legyenek P és Q az A részhalmazai. P funkcionálisan meghatározza Q-t vagy Q funkcionálisan függ Ptől, ha minden P-hez tartozó értékhez pontosan egy Q-hoz tartozó értéket tudunk hozzárendelni. Vagyis P két különböző értéke esetén a Q értékei is különbözőek. Jelölés: P → Q Teljes függőség: Legyenek P, Q ⊆ A. Q teljesen függ P-től, ha P → Q, de funkcionálisan nem függ P egyetlen valódi részhalmazától sem. Különben részleges függőségről beszélünk. Tranzitív függőség: Legyenek P, S ⊆ A. Azt mondjuk, hogy S tranzitíven függ P-től, ha létezik Q ⊆ A, úgy, hogy P → Q és Q → S, de nem teljesül az, hogy Q → P és S → Q Normál formák
Ha az AB eleget tesz bizonyos feltételeknek, akkor azt mondjuk, hogy teljesít egy bizonyos NF-t, feltéve, hogy a teljesített feltételek magukba foglalják a az illető NF követelményeit. 1NF: egy rel. minden sorának, minden attribútumához pontosan egy attribútumérték rendelhető 1NF-re hozás: Két relációra bontjuk úgy, hogy a problémás attribútum(ok) egy külön relációt alkosson és külső kulcsos kapcsolattal kötjük össze őket; a kulcs-külső kulcs a nem problémás attrib. kulcsa lesz. 2NF: 1NF-ban van és minden másodlagos attribútum teljesen függ a kulcstól. 2NF-re hozás: azokat a másodlagos attribútumokat, amelyek a kulcs egy részével is funkcionális függőségben vannak, a kulcs illető részével együtt külön választjuk egy másik relációba. A különvált reláció kulcsa külső kulcs marad a megmaradt relációban. Szükség esetén ezt a műveletet megismételjük. 3NF Ért. 1: ha 2NF és egyetlen másodlagos attribútum sem függ tranzitíven a kulcstól. 5 / 12
Adatbáziskezelés
Demeter István-Hunor
Ért. 2:
ha minden másodlagos attribútum funkcionálisan független és teljesen függ a kulcstól. Ért. 3: ha 2NF és a másodlagos attribútumok között nincs funkcionális függőség. 3NF-re hozás: Felbontjuk a relációt úgy, hogy a funkcionális függőségben levő másodlagos attribútumokat külön relációba válasszuk, és valamelyik attribútum megmarad az eredetiben külső kulcsként.
6 / 12
Adatbáziskezelés
Demeter István-Hunor
Feladat SZÁMLA SZÁML ASZÁM 512
DÁTUM 96.03.12
VEVŐNÉV XYZ KFT
VEVŐCÍM BP. Váci u. 2
612
96.03.12
UVT RT
Érd, Só u.3
082
96.03.14
AAB KFT
BP. Sas u. 4
TERMÉK KÓD 072 050 111 072 052 111 601 110 001
TERMÉKNÉV Rádió TV Magnó Rádió Kábel Videó Mikrosütő Videó TV
MENNYI SÉG 5 3 6 3 5 7 3 7 6
EGYSÉGÁR 20 40 30 20 2 50 25 40 60
ÖSSZ 100 120 180 60 10 350 65 280 360
SZÁMLAÖSSZ 400
495 640
Nincs semmilyen normál formában, mert a TERMÉKKÓD, TERMÉKNÉV, MENNISÉG, EGYSÉGÁR és ÖSSZ többértékűek.
7 / 12
Adatbáziskezelés
Demeter István-Hunor
1NF-ban: SZÁMLA szétválik ELAD1 SZÁMLASZÁM 512 612 082
DÁTUM 96.03.12 96.03.12 96.03.14
VEVŐNÉV XYZ KFT UVT RT AAB KFT
VEVŐCÍM BP. Váci u. 2 Érd, Só u.3 BP. Sas u. 4
SZÁMLAÖSSZ 400 495 640
MENNYISÉG 5 3 6 3 5 7 3 7 6
EGYSÉGÁR 20 40 30 20 2 50 25 40 60
ELAD2 SZÁMLASZÁM 512 512 512 612 612 612 612 082 082
TERMÉKKÓD 072 050 111 072 052 111 601 110 001
TERMÉKNÉV Rádió TV Magnó Rádió Kábel Videó Mikrosütő Videó TV
ÖSSZ 100 120 180 60 10 350 65 280 360
Nincs 2NF-ban, mert TERMÉKNÉV és EGYSÉGÁR funkcionálisan függnek TERMÉKKÓD-tól, ami egy része a kulcsnak.
8 / 12
Adatbáziskezelés
Demeter István-Hunor
2NF-ban: ELAD2 szétválik ELAD1 (nem változott) SZÁMLASZÁM 512 612 082
DÁTUM 96.03.12 96.03.12 96.03.14
VEVŐNÉV XYZ KFT UVT RT AAB KFT
VEVŐCÍM BP. Váci u. 2 Érd, Só u.3 BP. Sas u. 4
SZÁMLAÖSSZ 400 495 640
TERMÉK1 TERMÉKKÓD 072 050 111 052 601 110 001
TERMÉKNÉV Rádió TV Magnó Kábel Mikrosütő Videó TV
EGYSÉGÁR 20 40 30 2 25 40 60
EDLADÁS2 SZÁMLASZÁM 512 512 512 612 612 612 612 082 082
TERMÉKKÓD 072 050 111 072 052 111 601 110 001
MENNYISÉG 5 3 6 3 5 7 3 7 6
ÖSSZ 100 120 180 60 10 350 65 280 360
Nincs 3NF-ban, mert az ELAD1 táblában VEVŐCÍM és VEVŐNÉV funkcionálisan függnek egymástól, ha minden vevőnek csak egy címe van.
9 / 12
Adatbáziskezelés
Demeter István-Hunor
3NF-ban: ELAD1 szétválik ELA1 SZÁMLASZÁM 512 612 082
DÁTUM 96.03.12 96.03.12 96.03.14
VEVŐNÉV XYZ KFT UVT RT AAB KFT
SZÁMLAÖSSZ 400 495 640
ELA2 VEVŐNÉV XYZ KFT UVT RT AAB KFT
VEVŐCÍM BP. Váci u. 2 Érd, Só u.3 BP. Sas u. 4
TERMÉK1 TERMÉKKÓD 072 050 111 052 601 110 001
TERMÉKNÉV Rádió TV Magnó Kábel Mikrosütő Videó TV
EGYSÉGÁR 20 40 30 2 25 40 60
EDLADÁS2 SZÁMLASZÁM 512 512 512 612 612 612 612 082 082
10 / 12
TERMÉKKÓD 072 050 111 072 052 111 601 110 001
MENNYISÉG 5 3 6 3 5 7 3 7 6
ÖSSZ 100 120 180 60 10 350 65 280 360
Adatbáziskezelés
Demeter István-Hunor
Gyakorlatok 1. TANFOLYAM HSzám HNév 111 Csabi
112
Léda
...
...
Ahol: HSzám HNév HCím HSzülDát HVégz
Géza
Csicsó
...
HSzülDát 11/11/199 2
11/12/199 1 ...
HVégz Liceum
Felsőfokú
...
TNév Info
TTart 6
Könyvelés Német nyelv
3 8
Angol nyelv
8
17/01/2009
Titkárnői
4
19/02/2009
...
...
...
a hallgató személyi száma a hallgató neve a hallgató lakcíme a hallgató születési dátuma a hallgató végzettsége
2. KÖNYVTÁR KSzám Szerző 1 Pali
2
HCím CSíkSz.
KCím Cím
Nagy cím
Kiadó ABC
XYZ
11 / 12
TNév TTart Vizsga TanarNév TanarVégz KiadásÉve 1974
2006
Vizsga 12/11/2008
TanarNév Palibá Péterbá Pannika Ágica Gézu Ágica Lilla Pannika Palibá ...
TanarVégz Info Info Közgáz Angol-német Magyar-német Angol-német Román-angol Közgáz Info ...
a tanfolyam neve, amelyre a hallgató beíratkozott a tanfolyam időtartama (hónapokban kifejezve) vizsgaidőpont a tanfolyamon tanító tanárok neve a tanfolyamon tanító tanárok végzettsége (szak)
KliensNév Gazsika
KliensCím CsíkSz.
SzülDát 11/11/1991
Bercike
Csicsó
12/12/1990
Gazsika
CsíkSz.
11/11/1991
Szerénke
SzentK.
17/05/1990
KivDát 10/06/2004 17/05/2008 23/08/2005 18/12/2007 23/08/2005 27/11/2006 10/12/2007 08/07/2008
VisszDát 18/12/2004 01/08/2008 25/01/2006 12/05/2008 21/11/2005 02/06/2007 21/02/2008 10/10/2008
Adatbáziskezelés
...
...
Ahol: KSzám Szerző KCím Kiadó KiadásÉve
Demeter István-Hunor
...
...
...
a könyv nyilvántartási száma a könyv szerzőjének neve a könyv címe a könyv kiadójának neve a könyv kiadásának éve
12 / 12
...
...
KliensNév KliensCím SzülDát KivDát VisszDát
...
...
...
a könyvet kölcsönvevő egyén (kliens) neve a könyvet kölcsönvevő egyén (kliens) lakcíme a könyvet kölcsönvevő egyén (kliens) születési dátuma a könyv kivételének dátuma a könyv visszahozásának dátuma