Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

ADATTÍPUSOK, ADATBÁZISOK Dr. Zajzon Gergely Semmelweis Egyetem, ÁOK Egészségügyi Informatikai, Fejlesztő és Továbbképző Intézet.

Hasonló előadás


Az előadások a következő témára: "ADATTÍPUSOK, ADATBÁZISOK Dr. Zajzon Gergely Semmelweis Egyetem, ÁOK Egészségügyi Informatikai, Fejlesztő és Továbbképző Intézet."— Előadás másolata:

1 ADATTÍPUSOK, ADATBÁZISOK Dr. Zajzon Gergely Semmelweis Egyetem, ÁOK Egészségügyi Informatikai, Fejlesztő és Továbbképző Intézet

2 2 ADATBÁZIS (Database) Hétköznapian: a bennünket érdeklő dolgok adatainak szervezett összessége.

3 3

4 4

5 5

6

7 7

8 8 ADATBÁZIS Hétköznapian: a bennünket érdeklő dolgok adatainak szervezett összessége. Tárolás szempontjából: az adatbázis több, egymással kapcsolatban álló tábla összessége.

9 9 ADATBÁZIS Hétköznapian: a bennünket érdeklő dolgok adatainak szervezett összessége. Tárolás szempontjából: az adatbázis több, egymással kapcsolatban álló tábla összessége. Definíció: Az adatbázis véges számú egyed- előfordulásnak, azok véges számú tulajdonság- előfordulásának és kapcsolat-előfordulásának az adatmodell által szervezett együttese.

10 10 ADAT Az adat valamilyen ismeret megjelenített formája, valakinek vagy valaminek egy jellemző tulajdonsága. Informatikai szempontból az adat a számítógépben jelsorozat formájában tárolt, kódolt információ.

11 11 ADAT Tartalmi szempontból érthetőnek kell lennie (a témát ismerő személy számára), formailag pedig mechanikusan (számítógéppel) feldolgozhatónak, strukturáltnak.

12 12 ADAT - példák Recepten megjelenített adatok: - név - születési dátum - lakcím - TAJ szám Telefonkönyv: - név - lakcím - telefonszám

13 13 ADAT - példák Vasúti menetrend: táblázatos formában közölt, strukturált adathalmaz. Ha a vasúti menetrendet szöveges formában, pl. ahogy a hangosbemondó bemondja, írnák ki, nehezen lenne használható. A szövegesen tárolt ismeretek nem elég strukturáltak, nem rendezhetőek, nehezen kereshetőek.

14 14 INFORMÁCIÓ Információ: új ismeretet hordozó adat, értelmezett adat, értesülés. Ez a megfogalmazás feltételezi az adatot értelmező személyt, hiszen ugyanaz az adat lehet valakinek ismert, másnak nem. Az információ mértékegysége a bit, amelynek értéke 1 vagy 0 lehet (igaz / hamis).

15 15 INFORMÁCIÓ A tárolás és visszakeresés mellett az adatok feldolgozásának az is célja, hogy ezáltal további új ismeretekhez, tehát információhoz jussunk. Pl. egy menetrendből kikereshető, hogy naponta hány vonat indul egy bizonyos állomásra. Ez még annak is új információ, aki kívülről tudja a menetrendet.

16 16 ADATTÍPUS Az adattípus az adatmezők alapvető tulajdonsága. Meghatározza az alábbiakat: –Típusérték-halmaz –Szerkezet –Műveletek Lehetővé teszi, hogy a táblázat egy oszlopán belül csak azonos típusú adatokat tároljunk.

17 17 ADATTÍPUS Típusértékhalmaz: megadja egy adat lehetséges értkeinek halmazát. Megadja az a mezőben tárolt adatokkal végezhető műveleteket Szerkezet: Meghatározza a tárolható adatok formáját, hosszát.

18 18 ELEMI ADATTÍPUSOK Nem bonthatók további részekre Részei nem kezelhetőek külön egységként Típusosztályok: I.Megszámlálható típusosztály II.Valós típusosztály

19 19 MEGSZÁMLÁLHATÓ TÍPUSOSZTÁLY NUMERIKUS Byte0-255Előjel nélkül8 bit Shortint(-128)-127Előjeles8 bit Integer(-32768)-32767Előjel nélkül16 bit LOGIKAI1 vagy 0Igaz / Hamis1 bit KARAKTERBármilyen karakterASCII kódtábla alapján ábrázolják 1 byte (8 bit) ASCII kódtábla: 0 – 31vezérlőkarakterek 32 – 127vezérlőkarakterek kiegészítő karakterek

20 20 VALÓS TÍPUSOSZTÁLY Numerikus valós adattípusok Real(-2,9* )-(1,7*10 38 )11-12 számjegy pontosság 48 bit Single(-1,5* )-(3,4*10 38 )7-8 számjegy pontosság 32 bit Double(-5* )-(1,7* )15-16 számjegy pontosság 64 bit Extended(-3,4* )- (1,1* ) számjegy pontosság 80 bit Comp számjegy pontosság 64 bit

21 21 ADATTÍPUS Az adattípus megfelelő kiválasztása növeli az adatok strukturáltságát: Pl. a születési dátumokat tartalmazó mező adatípusát célszerű dátumként beállítani. Ez lehetővé teszi, hogy az adattal dátumokra jellemző műveletek végezhessünk: pl. adott dátum intervallumban születettek kiválasztása, dátumból csak év és hónap megjelenítése

22 22 ADATTÍPUS Növeli az adatbevitel pontosságát: - pl. dátum adattípus esetében nem engedi, hogy február 31-át vigyük be értékként - szám adattípusú mezőbe nem engedi szöveg bevitelét.

23 23 TÁBLÁZAT ADATBÁZIS TAJ számNévLakcímSzül.:Telefon Iv BélaBp Palota utca Könyves Kálmán IV. kerület Mély utca Jan Harmadi k András Székesfehérvár 8000 Fő út (30) Dobzse László Bp Kis utca Március Kalapos József Bp Nagy utca 1 30/04/

24 24

25 25 ADATTÍPUS Hossz: (TAJ – Mo.n max 9 karakter) Formátum: pl. számnál 2 tizedesjegy Beviteli maszk: dátum: éééé.hh.nn vagy telefonszám: +országkód-körzet-szám. Érvényességi szabály: életkor: max. 130 Kötelező megadni

26 26 MEGFELELŐ ADATTÍPUS KIVÁLASZTÁSA Pl.: TAJ-szám Szám vagy szöveg? szöveg Hossz: 9 Beviteli maszk: Kötelező:Igen

27 27 TÁBLÁZAT ADATBÁZIS Táblázat: strukturált adathalmaz. - kereshető - rendezhető - szűrhető Táblázatkezelő program: pl. MS-Excel

28 28 TÁBLÁZAT ADATBÁZIS „Excel adatbázis”: speciális elrendezésű táblázat: a táblázat sorai egy halmaz elemeinek a tulajdonságait írják le. Az oszlopok a különböző elemek egyazon tulajdonságát adják meg, melyekre az oszlop elnevezésén keresztül lehet hivatkozni. Az oszlopnevek együttesen alkotják a táblázat fejlécét.

29 29 TÁBLÁZAT ADATBÁZIS TAJ számNévLakcímSzül.:Telefon Iv BélaBp Palota utca Könyves Kálmán IV. kerület Mély utca Jan Harmadi k András Székesfehérvár 8000 Fő út (30) Dobzse László Bp Kis utca Március Kalapos József Bp Nagy utca 1 30/04/

30 30 TÁBLÁZAT ADATBÁZIS Táblázat kezelés hátrányai: -ugyanazt az adathalmazt nem lehet egyidejűleg több gépről módosítani -Nem elég biztonságos az adattárolás: egy véletlen átrendezéssel tönkre tehetőek az adatok. -Az adatok szerkezete, kapcsolata nincs külön feljegyezve

31 31 TÁBLÁZAT ADATBÁZIS Táblázat kezelés hátrányai: -Logikai korlát, hogy már viszonylag egyszerű feladatoknál is célszerű lehet több táblázatba rendezni az adatokat, de egy táblázatkezelővel nehezen követhető ezek kapcsolata. -Elvi szempontból ez a legfontosabb korlát!

32 32 TÁBLÁZAT ADATBÁZIS NévIrszVárosCímHáziorvosRend irsz Rend_ városRend_címRendMh_tel Balla Béla2080ÉrdFő u. 3.Dr. Ház1191BudapestKék u Kis Péter1022BudapestKis u. 2.Dr. Zöld1221BudapestFa u Nagy Irén1134BudapestÚj u. 4.Dr. Ház1191BudapestKék u Pók Géza2560DiósdTár u. 9.Dr. Kovács2205DiósdZár u Pl. személyek adatait tartalmazó tábla, személy háziorvosának adataival kiegészítve. A rendelők halmaza itt úgy jelenik meg, hogy minden személyhez megadjuk – mint jellemzőt –, hogy hova tartozik. Látszatra a rendelői cím és telefon is ugyanolyan jellemző, mint a személy lakcíme, valamiben mégis különböznek a többi jellemzőtől. Ezek ugyanis nem közvetlenül a személynek, hanem a rendelőnek a jellemzői, és csak azon keresztül kapcsolódnak a személyhez. => Az ilyen jellemzőket közvetett jellemzőknek nevezzük.

33 33 TÁBLÁZAT ADATBÁZIS A közvetett jellemzők többszörös (redundáns) adattárolást eredményeznek, mert a munkahelyi adatokat minden ott dolgozó személynél tárolni kell. Ebből következően az adatok módosulásakor több helyen is módosítani kell a táblázatot, ami egyrészt felesleges munka, másrészt hibalehetőséggel jár.

34 34 ADATBÁZIS Az adatbázis az adatmodell alapján szervezett adategyüttes, amiből következik, hogy az adatokon túl azok szerkezetének, kapcsolódási szabályainak leírását is tartalmaznia kell.

35 35 ADATMODELL Az adatok elrendezését meghatározó elvi struktúrát nevezzük adatmodellnek. Az adatmodell tehát nem konkrét adatértékeket tartalmaz, hanem az adatok tulajdonságait, szerkezetét, lehetséges kapcsolatait írja le. Magukat az adatokat az adatbázis tartalmazza, ami az adatoknak az adatmodell szerint szervezett együttese.

36 36 RELÁCIÓS ADATMODELL A reláció mint matematikai fogalom egy olyan halmaz, amelynek elemei két vagy több halmaz egy-egy eleméből álló rendezett értéksorozatok. A relációs adatmodell egy olyan adatmodell, amelynek legfontosabb eleme a matematikai reláció fogalma. Definiálja azokat a jellemző adatszerkezeteket, amelyeken dolgozik, illetve azokat a műveleteket, amelyek rajta értelmezettek. => a relációs adatmodell a logikai adatbázis (vagy fogalmi adatbázis) kereteit határozza meg, azaz nem foglalkozik azzal a problémával, hogy adatokat ténylegesen hogyan kell tárolni.

37 Táblák közti kapcsolatok Egy-az-egyhez kapcsolat 1:1 37

38 Táblák közti kapcsolatok Egy-a-többhöz kapcsolat 1:N 38

39 Táblák közti kapcsolatok Több-a-többhöz kapcsolat M:N 39

40 ADATMODELL ELMÉLETI (FOGALMI) ADATMODELL: (Conceptual data model) Az adatbázisban tárolandó információk és közöttük fennálló kapcsolatok elemzése. Független a választandó szoftvertől. FIZIKAI ADATMODELL (Physical data model) Az adatbázisban használt strukturák: táblák, adattípusok, kapcsolatok, stb. részletes megadása. 40

41 MOZIMŰSOR – ELMÉLETI ADATMODELL MOZIK MOZI_ID MOZICIM MOZITEL MOZIWEB MOZINEV M FILMEK FILM_ID HOSSZ NYELV RENDEZO FILMCIM PK N 41

42 MOZIMŰSOR – FIZIKAI ADATMODELL MOZIK MOZI_ID MOZICIM MOZITEL MOZIWEB MOZINEV 1 FILMEK FILM_ID HOSSZ NYELV RENDEZO FILMCIM PK 1 MOZI__FILM MOZIFILM_ID FILM_FK VETITES MOZI_FK PK N N 42

43 ADATBÁZISKEZELŐ egy adatbázis kezeléséhez olyan szoftverre van szükség, amely képes az adatszerkezet nyilvántartására és a kapcsolatrendszer kezelésére. Képes az adatokhoz egyidejűleg több rendezettség szerinti hozzáférést biztosítani Lehetővé teszi egyszerre több felhasználó számára az adatok módosítását.. 43

44 TÁBLÁZAT ADATBÁZIS A rendezés elsődleges célja az adatkeresés meggyorsítása. Táblázatkezelő: a rendezés ténylegesen megcseréli a sorokat, amit fizikai rendezésnek nevezünk. Az adattáblák egyidejűleg nyilván csak egy szempont szerint lehetnek fizikailag rendezve. Ha azonban egy táblázatnak sok oszlopa van, akkor ez nem célszerű. Adatbázis-kezelő: csak külön kérésre rendezik fizikailag a sorokat. Ehelyett ún. logikai rendezést végeznek, ami egy ún. INDEX készítését jelenti. Az eljárás hasonlít a könyvtári katalógus rendszerhez, ahol a könyveket egy raktári szám szerint rendezve tárolják a raktárban. A katalóguscédulát, amelyen fel van tüntetve a cím, szerző, és kiadó, több rendezési szempont szerint ki lehet keresni. A raktári számon keresztül található meg a könyv a raktárban. 44

45 LOGIKAI RENDEZÉS - INDEX név szerinti rendezés: kiemeli a név oszlopot egy külön táblázat egyik oszlopaként, egy második oszlopban pedig melléteszi, hogy ténylegesen hol van az eredeti adat (az eredeti táblázathoz illesztett belső sorszám alapján hányadik sorban). A rendezés eredményeként kapott táblázatot nevezzük indextáblának (vagy indexfájlnak), a műveletet pedig indexelésnek. Az index az a mutató, amelyik megmutatja az adatok tényleges helyét. 45

46 LOGIKAI RENDEZÉS - INDEX 46

47 HIVATKOZÁSI INTEGRITÁS A hivatkozási integritás biztosítja, hogy két egyedtípus közötti kapcsolatban az egyes egyed-előfordulások kapcsolatai ne sérüljenek meg, a kapcsolt táblák kapcsoló mezőinek tartalma mindig megfelelő legyen. Szabály: Nem rögzíthető olyan idegen kulcs érték, amely a kapcsolt táblában mint elsődleges kulcs nem létezik. Nem szüntethető meg olyan elsődleges kulcs érték, amely a kapcsolt táblá(k)ban idegen kulcsként létezik. Nem módosítható olyan elsődleges kulcs érték, amely a kapcsolt táblá(k)ban idegen kulcsként létezik. 47

48 SZEMÉLYEK HÁZI ORVOSAI ADATBÁZIS TAJNévIrszVárosCímHáziorvosRend_irszRend_városRend_címRendMh_tel Balla Béla2080ÉrdFő u. 3.Dr. Ház1191BudapestKék u Kis Péter1022BudapestKis u. 2.Dr. Zöld1221BudapestFa u Nagy Irén1134BudapestÚj u. 4.Dr. Ház1191BudapestKék u Pók Géza2560DiósdTár u. 9.Dr. Kovács2205DiósdZár u BETEGEK TAJ IRSZ VAROS CIM NEV PK HAZIORVOS REND IRSZ REND VAROS REND_CIM RENDMH_TEL 48

49 NORMALIZÁLÁS A modellezési elmélet által kidolgozott feltételek, melyek segítségével megvizsgálható, hogy a táblázatok jól vannak-e felépítve. A szakirodalom öt normál formát tart számon, ezek közül az első hármat vizsgáljuk meg részletesen. Egytől kezdve számozzák őket (jelölésük: 1NF, 2NF,...). 49

50 Lényege: Az adatbázis optimalizáltsága, azaz a redundanciák megszüntetése az adatbázisban. A redundancia megszüntetése: A táblák normalizálásakor az azokban lévő felesleges adatok mennyiségét próbáljuk csökkenteni. NORMALIZÁLÁS 50

51 1 NORMÁL FORMA nem tartalmaz ismétlődő csoportokat sorait egyedi kulccsal lehet azonosítani Feltételei: a táblázat nem tartalmaz ismétlődő csoportokat, pl. nincs két azonos nevű oszlopa, nincs két egyforma sora, nincs többszörös adatérték (egy adatmezőben csak egy érték van), és a sorait egyedi kulccsal lehet azonosítani. A személyek és orvosaik adatait tartalmazó táblázatunkra ezek a feltételek fennállnak. Ha egy személynek több házi orvosa lenne, azt az 1NF szerint nem lehetne beírni az orvos mezőbe (mondjuk vesszővel elválasztva), erre más szerkezetet kellene kitalálni. 51

52 TAJNévIrszVárosCímHáziorvosRend_irszRend_városRend_címRendMh_tel Balla Béla2080ÉrdFő u. 3.Dr. Ház, Dr. Kovács 1191BudapestKék u Kis Péter1022BudapestKis u. 2.Dr. Zöld1221BudapestFa u Nagy Irén1134BudapestÚj u. 4.Dr. Ház1191BudapestKék u Pók Géza2560DiósdTár u. 9.Dr. Kovács2205DiósdZár u BETEGEK TAJ IRSZ VAROS CIM NEV PK HAZIORVOS REND IRSZ REND VAROS REND_CIM RENDMH_TEL Ez nem felel meg így az 1NF- nak!! 52

53 0 NF SzállítókódTelephelyTelepcímBankszámla S1 T11 T12 T13 C11 C12 C13 B1 S2 T21 T22 C21 C22B2 Kiindulási állapot (Táblák vannak a táblában) 53

54 1 NF SzállítókódTelephelyTelepcímBankszámla S1T11C11B1 S1T12C12B1 S1T13C13B1 S2T21C21B2 S2T22C22B2 Megszüntetjük az ismétlődő csoportokat 54

55 FUNKCIONÁLIS FÜGGŐSÉG Egy tulajdonság értékét egy másik tulajdonság értéke egyértelműen meghatározza. A funkcionális függés egyirányú kapcsolatot jelent. Pl.: Városnév-megyenév Magyarországon: Miskolc esetén biztosan tudjuk, hogy a kapcsolódó megye neve Borsod. 55

56 FUNKCIONÁLIS FÜGGŐSÉG 56

57 2 NORMÁL FORMA Feltételei: táblázat megfelel az 1NF feltételeknek és az összes jellemző teljesen függ a kulcstól. => nincs benne részleges függés, azaz bármely nem kulcs mező a teljes kulcstól függ, de nem függ a kulcs bármely részhalmazától. A személyeknél láttuk, hogy a kulcs (esetünkben a TAJ) a valós halmaz egy-egy elemét képviseli, tehát egy személyt. Az orvos adataival bővített táblázat is kielégíti ezt a feltételt, hiszen az orvos adatai végső soron a személyhez is tartoznak. 57

58 Példa a második normál forma feltételeit megsértő relációra Nem lehet funkcionális függőseg a kulcs egy részétől: Pl. Konferencia: terem időpont férőhely előadas) Kulcsok: {terem, időpont} Függőségek: {terem, időpont} -> előadás terem -> férőhely 58

59 3 NORMÁL FORMA A 3NF feltételei táblázat megfelel az 2NF feltételeknek és a táblázatban nincsenek közvetett jellemzők: vagyis egy felvett jellemző ne tartozzon más olyan halmazhoz, amely szerepel a táblázatban. A házi orvosi adatokkal bővített személy tábla ennek a feltételnek már nem felel meg, mert a rendelő címe az orvos személyétől is függ: az orvoshoz is tartozik, sőt elsődlegesen ahhoz tartozik, és csak közvetve tartozik a személyhez. 59

60 TAJNévIrszVárosCímHáziorvosRend_irszRend_városRend_címRendMh_tel Balla Béla2080ÉrdFő u. 3.Dr. Ház1191BudapestKék u Kis Péter1022BudapestKis u. 2.Dr. Zöld1221BudapestFa u Nagy Irén1134BudapestÚj u. 4.Dr. Ház1191BudapestKék u Pók Géza2560DiósdTár u. 9.Dr. Kovács2205DiósdZár u TAJNévIrszVárosCímPecsét Balla Béla ÉrdFő u Kis Péter Budape st Kis u Nagy Irén Budape st Új u Pók Géza DiósdTár u PecsétHáziorvosRend_irszRend_városRend_címRendMh_tel 31191Dr. Ház1191BudapestKék u Dr. Zöld1221BudapestFa u Dr. Kovács2205DiósdZár u

61 BETEGEK TAJ IRSZ VAROS CIM NEV PK HAZIORVOS REND IRSZ REND VAROS REND_CIM RENDMH_TEL BETEGEK TAJ IRSZ VAROS CIM NEV M ORVOSOK PECSÉT IRSZ VAROS TEL ORVOS PK N CIM 61

62 ADATKEZELŐ NYELV SQL = Strucured Query Language DDL – Data Definition (pl. CREATE) DML – Data Manipulation (pl. INSERT, UPDATE, DELETE) QL – Query Language (pl. SELECT) 62

63 TÁBLATÍPUSOK Fő tábla Segédtábla Kapcsoló tábla (association table) Szótár tábla (look-up table, value list) 63

64 ADATBÁZIS SZERVER Speciális adatbáziskezelő szoftver Nem a kezelői felület biztosítása a cél! Lehetővé teszi egyszerre több felhasználó számára az adatok módosítását. Szabályozza az adatokhoz való hozzáférést (jogosultságok) Rendszeres adatmentés biztosítása Tranzakciókezelés 64

65 ADATBÁZIS SZERVER Oracle MS-SQL My-SQL PostgreSQL 65

66 Köszönöm a figyelmet! Dr. ZAJZON GERGELY Egyetemi tanársegéd Telefon: Web: 66


Letölteni ppt "ADATTÍPUSOK, ADATBÁZISOK Dr. Zajzon Gergely Semmelweis Egyetem, ÁOK Egészségügyi Informatikai, Fejlesztő és Továbbképző Intézet."

Hasonló előadás


Google Hirdetések