Kihagyás

E/K modell

Adatbázissémák vázolására

Megszorításokat is tartalmazhat, de műveleteket nem

  • A tervek lesznek az egyed-kapcsolat-diagrammok
  • később ezek átalakítása adatbázissémává

E/K modellek motivációja

  • A tervezés fontos
  • Jellemzően csak a tény adott, hogy kell egy adatbázis, részletek nélkül
  • A főbb részek felvázolására hatékonyabb lehet egy ábra...

Egyedhalmazok

  • Egyed
  • Egyedhalmaz
    • OOP-s Osztályok-hoz hasonlít
  • Attribútum
    • atomi értékűek

E/K diagramm

  • Egyedhalmaz
    • Téglalap
  • Attribútum
    • Megfelelő téglalaphoz kötött ovális
      • Krumpli 🥔

Kapcsolatok

  • Kettő vagy több egyedhalmazt köt össze
  • Rombusz, hozzá kötve a kapcsolathoz tartozó téglalapok

Kapcsolatok - Példa

Kapcsolatok - Példa

Kapcsolat halmaz

  • Egyedhalmaz "értéke" a hozzá tartozó egyedek halmaza
  • Egy kapcsolat "értéke" a kapcsolat halmaz
    • Sorok egy halmaza
      • Minden eleme egy kapcsolatbeli egyedhalmazból való

Többirányú kapcsolatok

  • Esetenként több egyedhalmazt kell összekötni
Hármas kapcsolat - Példa

Hármas kapcsolat - Példa

Több a többhöz kapcsolat (sok-sok)

  • Elsősorban bináris kapcsolatok
  • Ekkor mind a két résztvevő egyedhalmaz egyedei több másik egyedhez kapcsolódnak

Egy a többhöz (sok-egy)

  • Minden egyede az első egyedhalmaznak legfeljebb egy egyedhez kapcsolódhat a másik halmazból
  • A másik halmaz entitásai nulla, egy vagy több entitáshoz is kapcsolódhat

Egy az egyhez (egy-egy)

  • Minden entitás legfeljebb egy másikhoz kapcsolódhat a másik halmazból

Kapcsolatok számossága

  • sok-egy kapcsolat "egy oldalán" nyíl
  • egy-egy kapcsolat mindkét végén nyíl
  • pontosan egy esetén lekerekített nyíl
    • Mindenképp lesz párja

Kapcsolat számossága - Példa

Nyilak - Példa

Kapcsolatok attribútumai

  • Néha érdemes attribútumhoz illeszteni
  • Nagyjából a halmazban lévő kapcsolat sorainak tulajdonsága

Kapcsolat attribútumai

ugye a Felszolgál(Kocsma, Sör, Ár)

Kocsma Sör Ár
Joe bárja Bud 2.3
Joe bárja Miller 3.1
Sue bárja Bud 2.4
Sue bárja Pete' Ale 3.2
Sue bárja Bud Lite 2.1
  • Vegyünk fel egy egyedhalmazt, ami a kérdéses attribútum értékei reprezentálja
  • Az új adathalmazt pedig adjuk hozzá

Attribútum átírása

  • Előfordulhat, hogy egy egyedhalmaz többször is megjelenik egy kapcsolatban
    • Ekkor az éleket címkézzük
      • A címkéket szerepeknek hívjuk itt

Szerepek


Alosztályok

  • Alosztály = speciális eset = kevesebb egyed = több tulajdonság (attribútum/kapcsolat)
  • Feltesszük, hogy az alosztályok rendszere fát alkot
    • Többszörös öröklés nincs, (OEP vibes)
  • Az aloszály kapcsolatot "az-egy" háromszögek jelölik
    • Ősosztály fele mutat a háromszög felső csúcsa

Alosztályok - Példa

Alosztályok - Kép

E/K vs OO

  • OO paragidmában minden objektum pontosan egy osztálynak lehet eleme
    • Az alosztályok az ősosztályból örökölnek
  • E/K egyedeknek minden alosztálynak vannak reprezentánsai, amikhez hozzátartoznak
    • Szabály: ha az \(e\) egyed szerepel egy alosztályban, akkor \(e\) szerepel az ősosztály(ok)ban is

Kulcsok

  • Kulcs az atribútumoknak egy olyan halmaza, melyekre nem létezhet két olyan egyed, amelyek a kulcsatribútumok mindegyikén azonos értéket vennének fel.
    • Pár helyen előfordulhat egyezés, de nem mindenhol(!)
  • Minden egyedhalmazhoz meg kell adnunk egy kulcsot
  • Jelölni továbbra is aláhúzással lehet
  • Egy öröklődési hierarhiában csak a gyökér egyedhalmaznak lehet kulcsa, ez lesz a hierarhiában szereplő többi alosztálynak is a kulcsa
    • Illetve csak egy kulcs adható meg egy modellben
      • Egyszerűen azért, mert állhat több attribútumból is a kulcs, nem tudnánk hol elválasztani
      • Ez persze azt is jelenti, hogy a kulcs most is állhat több attribútumból

Kulcs - Példa

Kulcsok - Példa

Gyenge egyedhalmazok

  • Jelölés: dupla téglalap
  • Esetenként egy-egy egyedhalmaz elemeinek egyedi meghatározásához további információra van szükség
  • Egy \(E\) egyedhalmaz akkor számít gyengének, ha \(E\) elemeinek azonosításához egy vagy több, \(E\)-ből induló sok-egy kapcsolat kapcsolódó egyedek kulcsértékére is szükség van
  • A gyenge egyedhalmazt támogató sok-egy kapcsolatot dupla rombusz jelzi

Gyenge egyedhalmaz - Szabályok

  • Egy gyenge egyedhalmaznak akár több sok-egy kapcsolata lehet más támogatóhoz (egyedkapcsolathoz)
  • Nem kell az összes sok-egy kapcsolatnak támogatónak lennie
  • Támogatók kerek nyílban végződnek
    • Tehát a a gyenge egyedkapcsolat a sok oldal, és a támogató az egy oldal
    • Egy támogató egyed azonosít egy(vagy több) gyenge egyedet
  • Kulcsa a saját aláhúzott és a támogató egyedhalmaz(ok) aláhúzott attribútumaiból áll
    • Ugye beszéltük, ahhoz, hogy a gyenge egyedet azonosítsuk, kell a támogatás, annak meg megvan rá a saját kulcsa az azonosításra

Gyenge- egyedhalmaz - Példa

Gyenge egyedhalmaz - Kép

Itt minden játékoshoz tartoznia kell egy csapatnak