Adatbázisok I. Egyed-kapcsolat formális modell. Egyed-kapcsolat formális modell. Kapcsolatok típusai

Hasonló dokumentumok
Adatbázisok I Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés

Adatbázis rendszerek. dr. Siki Zoltán

Adatbázisok 1. Az egyed-kapcsolat modell (E/K)

5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv:

Az egyed-kapcsolat modell (E/K)

Magas szintű adatmodellek Egyed/kapcsolat modell I.

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

A relációs adatmodell

Adatbázisok - 1. előadás

Adatmodellezés. 1. Fogalmi modell

Adatbázis rendszerek Definíciók:

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

Magas szintő adatbázismodellek

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

ADATBÁZIS-KEZELÉS. Relációs modell

Adatbázisrendszerek 8. előadás: Az Enhanced Entity-Relationship modell március 27.

Informatikai alapismeretek Földtudományi BSC számára

Adatbázis rendszerek I

ADATBÁZIS-KEZELÉS Demetrovics Katalin

T Adatbázisok-adatmodellezés

RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás

Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata:

Adatbázis-kezelés. alapfogalmak

Több felhasználó párhuzamosan olvashatja, bővítheti, módosíthatja és törölheti az adatokat Az adatok konzisztenciájának és biztonságának biztosítása

Adatbázisok gyakorlat

Adatbázis rendszerek I

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Adatbázismodellek. 1. ábra Hierarchikus modell

Adatbázisok. 4. gyakorlat. Adatmodellezés: E-K modellb l relációs adatbázisséma. Kötelez programok kiválasztása szeptember 24.

Adatmodellek komponensei

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

Adatbázisok elmélete 4. előadás

ADATBÁZIS-KEZELÉS. 1. Alapfogalmak

ADATBÁZIS-KEZELÉS. Modellek

Az adatbáziskezelés alapjai

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

Adatbáziskezelés alapjai ADATBÁZISKEKZELÉS 1

7. előadás. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF. Adatbázisrendszerek előadás november 3.

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

7. Előadás tartalma A relációs adatmodell

Adatbázisrendszerek BEVEZETÉS. A valós világban vannak dolgok, amelyek viselkednek, hatnak egymásra, kapcsolatban vannak. Ezek rendszert alkotnak.

Bevezetés: Relációs adatmodell

ADATBÁZIS-KEZELÉS. Relációalgebra, 5NF

Adatbáziskezelés. Indexek, normalizálás NZS 1

ADATBÁZISKEZELÉS ADATBÁZIS

Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázisrendszerek 7. előadás: Az ER modell március 20.

Adatbázisok elmélete 4. előadás

Bevezetés: Relációs adatmodell

Adatbázisok I. Jánosi-Rancz Katalin Tünde 327A 1-1

Adatbázis, adatbázis-kezelő

Adatmodellek. 2. rész

Adatbázis rendszerek 2. előadás. Relációs algebra

Fogalmak: Adatbázis Tábla Adatbázis sorai: Adatbázis oszlopai azonosító mező, egyedi kulcs Lekérdezések Jelentés Adattípusok: Szöveg Feljegyzés Szám

Adatbázis-kezelés alapok Adatbázisok című tárgyhoz, ismétlés kapcsán

Példa Többértékű függőségek, 4NF, 5NF

7. előadás. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF, 4NF, 5NF. Adatbázisrendszerek előadás november 7.

ADATBÁZISOK E-K MODELLBŐL RELÁCIÓS MODELL. Debrenti Attila

Adatigények. Koncepcionális séma (magas szintű modell) Logikai séma (alacsony szintű modell) Belső séma (fizikai szerkezet, hozzáférési módok)

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Az adatbázis-alapú rendszerek tervezésének alapvető része az adatok modellezése. Ez legtöbbször két fázisban zajlik:

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben

ADATBÁZIS RENDSZEREK. Adatbázisok története, alapfogalmak, adatmodellek. Krausz Nikol, Medve András, Molnár Bence

8. előadás. Az ER modell. Jelölések, az ER séma leképezése relációs sémára. Adatbázisrendszerek előadás november 14.

Adat és folyamat modellek

Adatbázisok. 3. gyakorlat. Adatmodellezés: E-K modellb l relációs adatbázisséma. Kötelez programok kiválasztása szeptember 21.

Ajánlott irodalom. Adatbázisok I.

Adatbáziskezelés 1 / 12

Relációs adatmodell. Adatbázisok használata

5. Előadás tartalma Magas szintű adatbázismodellek Adatmodellezés

Relációs modell és relációs algebra. ER konvertáása reációs modellre,példák relációs algebrára Személetes ismertetés

A könyv tartalomjegyzéke

Bevezetés: az SQL-be

Függőségek felismerése és attribútum halmazok lezártja

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

ADATBÁZISOK, ADATTÁRHÁZAK

Relációs adatmodellezés

Petőfi Irodalmi Múzeum. megújuló rendszere technológiaváltás

ADATMODELLEZÉS. Az egyed-kapcsolat modell

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

BEVEZETÉS Az objektum fogalma

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

2 Access 2016 zsebkönyv

Csima Judit október 24.

Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor

Adatbázisrendszerek. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF, 4NF, 5NF március 13.

Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián. 1. gyakorlat

Adatbázisok elmélete 12. előadás

Adatbázis rendszerek. 4. előadás Redundancia, normalizálás

TestLine - balla tesztje-03 Minta feladatsor

DW 9. előadás DW tervezése, DW-projekt

Java. Perzisztencia. ANTAL Margit. Java Persistence API. Object Relational Mapping. Perzisztencia. Entity components. ANTAL Margit.

Informatika szigorlat 9-es tétel: Az adatbázis-kezelő rendszerek fogalmai

17. A 2-3 fák és B-fák. 2-3 fák

ADATBÁZIS-KEZELÉS ALAPOK I.

8. előadás. normálformák. Többértékű függés, kapcsolásfüggés, 4NF, 5NF. Adatbázisrendszerek előadás november 10.

Adatbázis rendszerek 1. 4.Gy: ER modell

Átírás:

Egyed-kapcsolat formális modell Adatbázisok I Szemantikai adatmodellek Szendrői Etelka PTE-PMMK Rendszer és Szoftvertechnológiai Tanszék szendroi@pmmk.pte.hu E(A1,,An) egyedhalmaz séma, E az egyedhalmaz neve, A1,,An tulajdonságok, DOM(Ai) lehetséges értékek halmaza. például: tanár(név, tanszék). E(A1,,An) sémájú egyedhalmaz előfordulása: E = {e1,,em} egyedek (entitások) halmaza, ahol ei(k) DOM(Ak), semelyik két egyed nem egyezik meg minden attribútumban (az összes tulajdonság szuperkulcs), minimális szuperkulcs = kulcs. Egyed-kapcsolat formális modell K(E1,,Ep) a kapcsolat sémája, K a kapcsolat neve, E1,,Ep egyedhalmazok sémái, p=2 bináris kapcsolat, p>2 többágú kapcsolat, például: tanít(tanár,tárgy). K(E1,,Ep) sémájú kapcsolat előfordulása: K = {(e1,,ep)} egyed p-esek halmaza, ahol ei Ei, a kapcsolat előfordulásaira tett megszorítások határozzák meg a kapcsolat típusát. Kapcsolatok típusai K(E1,E2) bináris kapcsolat, sok-egy (n:1) K {(ei,ej)} alakú előfordulásaiban nem szerepelhet egyszerre (e1,e2) és (e1,e2'), ha e2 és e2' különböznek, másképpen: K előfordulásaiban minden E1-beli egyedhez legfeljebb 1 E2-beli egyed tartozhat, például: született(név,ország). E1 e1 e2 e2' E2

Kapcsolatok típusai K(E1,E2) bináris kapcsolat, egy-sok (1:n) (vagy (1:m)), K {(ei,ej)} alakú előfordulásaiban nem szerepelhet egyszerre (e1,e2) és (e1',e2), ha e1 és e1' különböznek, másképpen: K előfordulásaiban minden E2-beli egyedhez legfeljebb 1 E1-beli egyed tartozhat, például: vb_győztes(ország,rendező_ország). Kapcsolatok típusai K(E1,E2) bináris kapcsolat, sok-sok (n:m), K {(ei,ej)} alakú előfordulásai nincsenek korlátozva, előfordulhat (de nem kötelező, hogy előforduljon) az ábrán látható helyzet, vagyis minden E1-beli egyedhez több E2-beli egyed tartozhat, és fordítva, minden E2-beli egyedhez több E1-beli egyed tartozhat, például: tanul(diák,nyelv). E1 E2 E1 e2' E2 e1 e1' e2 e1 e1' e2 Kapcsolatok típusai K(E1,E2) bináris kapcsolat, egy-egy (1:1), K {(ei,ej)} alakú előfordulásai egyszerre sok-egy és egy- sok típusúak, vagyis minden E1-beli egyedhez legfeljebb egy E2- beli egyed tartozhat, és fordítva, minden E2-beli egyedhez legfeljebb egy E1-beli egyed tartozhat, nem kötelezően szerepel minden egyed a kapcsolatban, például: házaspár(férfi,nő). Kapcsolatok típusai K(E1,E2) bináris kapcsolat, öröklődési kapcsolat ("az egy", ISA), "a PC is a computer" = "a PC az egy számítógép", speciális egy-egy kapcsolat, K {(ei,ej)} alakú előfordulásaiban az összes E1-beli egyed szerepel, például: az_egy(főnök,dolgozó). E1 e2 E2 E1 e2 E2 e1 e1' e2' e1 e1' e2'

Szuperkulcsok, kulcsok, azonosítók Az egyedhalmaz szuperkulcsa olyan tulajdonsághalmaz, amelyről feltehető, hogy az egyedhalmaz előfordulásaiban nem szerepel két különböző egyed, amelyek ezeken a tulajdonságokon megegyeznek. Az összes tulajdonság mindig szuperkulcs. A minimális szuperkulcsot kulcsnak nevezzük Szuperkulcsok, kulcsok, azonosítók Az egyedhalmaz (szuper)kulcsai azonosításra használhatók. Több (szuper)kulcs is lehet. Ezek közül egyet kiválasztunk elsődleges (szuper)kulcsnak, a többi másodlagos (szuper)kulcs. Ha E1 egyedhalmaz szereplő T1,,Tk tulajdonságok halmaza az E2 egyedhalmaz (szuper)kulcsa, akkor azt mondjuk, hogy T1,,Tk idegen (szuper)kulcsa az E1- nek az E2-re nézve, például: hallgató(etr_kód,név,anyja_neve,szül_idő,lakcím) egyedhalmazban a név,anyja_neve,szül_idő idegen kulcs az ösztöndíjasok(név,anyja_neve,szül_idő,év,ösztöndíj) egyedhalmazra nézve. ER modellezés sajátosságai Egy egyedhalmaz többször is szerepel egy kapcsolatban. Példa: Az ER Modellezés sajátosságai Az ER modellben ugyanaz az objektum más-más módon is ábrázolható aszerint, hogy a tervező mit kíván hangsúlyozni. Egy objektum lehet egyed és tulajdonság is: -egyed: önálló lét, fontosság kiemelése -tulajdonság: kapcsolat más egyedekhez ügyosztály: egyed egy vállalati struktúrában, de tulajdonság is lehet az olvasó egyednél 11 12

13 ER modellezés sajátosságai (2) Egy objektum megjelenhet kapcsolatként és egyedként is. Az ER modellezés sajátosságai 3 A rugalmasság ellenére, számos esetben nem lehet egzaktul megoldani az adatrendszer leírását. Problémát jelent a specializációk, általánosítások, tartalmazási relációk ábrázolása, hiszen az ER csak az asszociációt ismeri. Egy objektum megjelenhet kapcsolatként vagy tulajdonságként is. Asszociáció ideiglenes szimmetrikus laza Tartalmazás szoros kapcsolat nem szimmetrikus állandósult ember motor jármű autó Specializáció állandósult nem szimmetrikus fogalmi szinten él csak Az egyfajta jelölési mód 14 elmossa a különbségeket. A kiterjesztett EER modell Az ER modell kibővítése a specializáció és a tartalmazás kapcsolat elemekkel. Jele: EER Asszociáció ideiglenes szimmetrikus laza Tartalmazás szoros kapcsolat nem szimmetrikus állandósult ember motor HAS_A autó A tartalmi különbség megmutatkozik a formában is. jármű IS_A (az-egy) Specializáció állandósult nem szimmetrikus fogalmi szinten él csak 15 EER modell - Alosztályok Az öröklési (az-egy) kapcsolatot a hagyományostól eltérően háromszöggel jelöljük, ezzel is kifejezve e kapcsolattípus különlegességét. A háromszög egyik oldalát az alosztállyal kötjük össze, ellenkező oldali csúcsát pedig az ősosztállyal (szuperosztállyal). Minden öröklési kapcsolat egy-egy kapcsolat, de az ezt kifejező nyilakat nem tüntetjük fel a kapcsolaton. 16

17 Relációs adatmodell Korábbi adatbázis modellek: Bonyolult, algoritmussal leírandó lekérdezés, adatkezelés merev struktúra Codd: A Relational Model of Data for Large Shared Data Banks(1970) A relációs modell fő erősségei: rugalmas kapcsolati rendszer Egyszerű struktúra hatékony lekérdező, kezelő műveleti rész Codd 12 szabálya 1. Információs szabály: minden információt táblázatokban szereplő értékekkel fejezünk ki. 2. Garantált elérési szabály: minden adat logikailag elérhető a táblázatnév, az oszlopnév és az elsődleges kulcs értékének megadásával. 3. Hiányzó információ szabálya: a null értékek megjelenítése független az adat típusától. 4. Rendszerkatalógus szabálya: az adatbázis logikai leírása úgy áll rendelkezésre, hogy arra jogosult felhasználó ugyanolyan módon kérdezheti le, mint az adatbázisban tárolt adatokat 17 18 Codd 12 szabálya (folyt.) 5. Széleskörű nyelv szabálya: egy jól definiált szintaxissal bíró, karaktersorozatokkal leírható, magas szintű relációs nyelv áll rendelkezésre, amelynek segítségével leírhatók a következők: adat és nézet definíciója, integritási feltételek, interaktív és programozható adatkezelés, tranzakció-kezdés, -érvényesítés és -elutasítás. 6. Nézetmódosítás szabálya: a rendszer képes végrehajtani minden elméletileg lehetséges módosítást a nézeteken. Codd 12 szabálya (folyt.) 7. Halmazszintű módosítás szabálya: a rendszer képes egész táblázatok együttes kezelésére. 8. Fizikai adatfüggetlenség szabálya: a felhasználó és alkalmazói programok tevékenysége független a fizikai adattárolásban vagy adatelérési módszerekben bekövetkező változásoktól. 9. Logikai adatfüggetlenség szabálya: a felhasználó és alkalmazói programok tevékenysége független az adatbázis táblázatainak logikai struktúrájában bekövetkező változásoktól, feltéve, hogy azok nem járnak információvesztéssel. 19 20

21 Codd 12 szabálya (folyt.) 10. Integritásfüggetlenségi szabály: az egyed- és hivatkozásintegritási feltételek az 5. szabály által meghatározott relációs nyelv segítségével definiálhatók. 11. Elosztás-függetlenségi szabály: a felhasználó és alkalmazói programok tevékenysége független az adatok elhelyezésétől. 12. Megkerülés-tiltási szabály: egy alacsonyabb szintű eljárásorientált programnyelv használatával nem lehet megkerülni az integritási vagy biztonsági feltételeket. Néhány elterjedtebb relációs adatbázis-kezelő rendszer (RDBMS) Kereskedelmi szoftverek: Oracle, MS SQL Server, DB2 (IBM) Korlátozott teljesítményű (4GB) ingyenes változatok pl. MS SQL Server Express Nyíltforrású szoftverek: PostgreSQL, MySQL, SQLite Fizetős változatok pl. MySQL Server Enterprise 22 Relációs adatmodell A relációs modell főbb jellemzői: a modell tiszta elméleti háttéren alapul egyszerű strukturális rész, mely könnyen implementálható deklaratív lekérdezési felület, mely könnyen kezelhető hatékony, egyszerű integritási rész Nagyfokú logikai függetlenség egységesség a struktúra és műveleti rész között halmazorientált műveletek egyszerű, elméletileg megalapozott tervezési metodika a belső optimalizálási modul fontos szereppel bír Bővíthető (objektum-relációs, multimédia, ) A relációs modell komponensei relációs adatstruktúra relációs műveletek relációs integritási feltételek 23 24

25 A relációs modell strukturális része Építőelemei: DOMAIN MEZŐ REKORD RELÁCIÓ ADATBÁZIS A domain fogalma Domain: értelmezési tartomány, mely megadja az elemhez tartozó értékkészletet, és meghatározza a végrehajtható műveletek körét. 26 Mező, rekord definíciója Mező: az adatbázis struktúra azon egysége, melyből a rekordok felépülnek; a mező rendszerint a legkisebb DB struktúra egység (egyértékű, atomi). A mezők megadásánál meg kell adni a domain-t(típust) és az integritási feltételeket. Rekord: adatbázis struktúra elem, mely a logikailag összetartozó, és egységként kezelhető elemi adatértékek együttesét jelöli. A mezősorrend rögzített (séma), köthetők hozzá integritási feltételek. 27 Kulcs, index definíciója Rekordkulcs: a rekord előfordulást egyértelműen azonosító mező vagy mezőcsoport; azaz értéke nem ismétlődik és egyetlen egy rekordban sem üres. Fontosabb típusai: elsődleges kulcs, jelölt kulcs, idegen kulcs, szuper kulcs, index kulcs. Index: az állomány rekordjainak kulcsértékét és a rekord pozíciót tároló szerkezet, melyben a bejegyzések kulcsérték szerinti sorrendben helyezkednek el, gyors keresést lehetővé téve. 28

29 Reláció, séma Reláció: az azonos szerkezetű rekord előfordulások névvel ellátott halmaza; tárolási egység a relációs adatbázisban. Séma: az adatbázis szerkezeti sémája; az adatbázis elemek, objektumok szerkezetének leírása. Domain DOMAIN: egy fogalomhoz rendelhető értékek rendszere értékhalmaz, mezőtípus műveletek, operátorok köre konverziós szabályok integritási elvek pl.: életkor értékből nem vonható ki testmagasság érték szabvány domain-ek: NUMBER(n,m) CHAR(n) DATE egyedi domainek 30 Mező, rekord MEZŐ jellemzője: egyértékű lehet normál vagy kulcs elnevezés, domain jellemzi integritási elemek köthetők hozzá tulajdonságként értelmezhető REKORD jellemzője: rögzített mezősorrend szerkezet jellemzi (séma) -integritási elemek köthetők hozzá Reláció RELÁCIÓ fogalma: azonos típusú rekordok halmaza - nincs sorrendiség - nincs rekord pozíció - nincs két azonos rekord megadása: - Azonosító név - rekord típus (relációsémája) 13455667 22334523 44433366 Vuk Jane Eyre Emma Fekete István Ch. Brontë J. Austen 3200 3500 4000 Európa Magvető Helikon ISBN Cím Szerző Ár Kiadó 88885555 A Zahir P. Coelho 2500 Atheneaum Előfordulások Reláció 31 A reláció előfordulása egy táblázattal szemléltethető. 32

33 A Reláció elemeinek magyarázata EK diagramok leképzése relációkba Általános szabály: 1. Vegyünk fel a kapcsolathoz egy relációt, melynek attribútumai a kapcsolódó egyedek (entitások) kulcs attribútumai és a kapcsolat saját attribútumai. 2. Ha ezen reláció kulcsa megegyezik valamely kapcsolódó egyed kulcsával, akkor a kapcsolat reláció az egyed relációjába beolvasztható. 1:1 kapcsolat - Az egyik egyed kulcsának betétele a másik egyed attribútumai közé pl. parkolóhely - jármű 1:n kapcsolat - Az 1 oldali egyed kulcsának betétele az n oldali egyed attribútumai közé pl. osztály - dolgozó n:m kapcsolat - két 1:n kapcsolatra felbontás, a kapcsolatból is egy reláció lesz, mely tartalmazza az összekapcsolt egyedek kulcsát pl. busz - sofőr 34 EK diagramok leképzése relációkba Példa konverzióra Többértékű attribútum külön relációba, szerző - könyv Összetett attribútum felbontás attribútumokra pl. cím Gyenge entitás tulajdonos egyed (entitás) kulcsának betétele a gyenge egyedbe 35 36

Példa konverzióra A A konverzió jellegzetességei A számított értékeket nem tároljuk a relációs adatbázis sémában. A modell műveleti részéhez tartozik. A többértékű tulajdonság konverziója: a tulajdonság új relációba kerül és kapcsolatát az eredeti relációval meg kell vizsgálni (1-N vagy N-M). 37 38