ER modellezés Szemléletes ismertetés egy példán keresztül
Adatbázis tervezés - ER modell ER modell elemei: egyed tulajdonság egyszerű összetett
Adatbázis tervezés ER modell elemei: tulajdonság többértékű származtatott
Adatbázis tervezés ER modell Egyedek közötti kapcsolatok Egy az egyhet: Minden A objektumhoz pontosan egy B objektum tartozhat, és minden B objektumhoz pontosan egy A objektum
Adatbázis tervezés Egyedek közötti kapcsolatok Egy a többhöz kapcsolat (1:N kapcsolat). Minden A objektumhoz több B objektum is tartozhat, de minden B objektum egyetlen A objektumhoz fog tartozni. Példuál ha csapatversenyt szeretnénk ábrázolni, ahol egy ember több csapatban nem lehet, akkor az A egyed lenne a csapat, a B egyed meg a résztvevők. Így egy csapathoz több résztvevő is tartozna,de egy résztvevő csak egy csapatban lehet.
Adatbázis tervezés Több a többhöz kapcsolat: Egy A egyedhez tartozhat több B egyed is tartozhat, és (ugyanazon) B egyed tartozhat több A egyedhez is.példa: például ha az A egyed a pizza (sajtos, sonkás, szalámis stb..) és a B egyed az alapanyag (paradicsom, sonka, ketchup, sajt stb..), akkor a pizza és az alapanyag között több-több kapcsolat van, hisz egy pizza több alapanyagból áll, de egy alapanyagot más pizzához is felhasználhatnak (pl. a sonkás pizzán van biztosan paradicsom és sonka, de paradicsom a szalámis pizzán is van, így a paradicsom több pizzához tartozik
Adatbázistervezés Példa Egyedek megtervezése Nézzük meg, hogy adott egyedek és köztük lévő kapcsolatokkal hogyan nézne ki mintaadat rá. Szeretnénk megtervezni egy TDK/kutatómunka dolgozatra való jelentkezést. A következőket tudjuk egy ilyen rendszerről: hallgatók jelentkeznek témára (egy hallgató több témát is vállalhat, de közösen most nem lehet) adott dolgozat címmel a rendszerbe. A témához előzetesen felkérnek konzulenst is. Egy dolgozatot több konzulens konferál. Nyílván ugyanazon címmel több dolgozat nem lehet.
Adatbázistervezés Példa Az egyedeket kell először megállapítani. A mi feladatunkból egyedek lehetnek: hallgatók, dolgozat, konzulens. Hiszen ezek 3, önállóan is létező dolgok, és ezen 3 egyed között kapcsolatokat definiálhatunk. Az egyedeknek tulajdonságokat kell definiálni. Mindenképpen kell egy,az adott egyedet egyértelműen azonosító egyedi érték, a kulcstulajdonság. Hallgató tulajdonságai: egy hallgatónak van személyigazolványszáma, vagy neptun kódja (ezek jók mindegyik kulcsnak), életkora, lakcíme, adott szak, amire jár, évfolyam. Ezek közül a lakcím az lehetne összetett, hiszen egy lakcím áll irányítószámból, településből, utcából, házszámból,emelet stb.. A szak az lehetne többértékű tulajdonság, mert a hallgató hallgathat több szakot is (habár ritka az ilyen)
Hallgató ER modell
Dolgozat ER modell Egy dolgozatnak adjunk azonosítóként sorszámot. Ez lesz a kulcsa. Lesz egy címe. A dolgozatnak lesz egy pontszáma is, amit majd bírálás után adnak neki.
Hallgató és dolgozat közötti összefüggés (egy hallgató több témát is vállalhat, de közösen most nem lehet) Nyílván ugyanazon címmel több dolgozat nem lehet. Egy a többhöz kapcsolat lesz, hiszen egy hallgató vállalhat több témát is,de egy témát csak egy hallgató. Ha adatsorral szeretném szemléltetni, akkor érvényes adatsor:
Hallgató és dolgozat közötti összefüggés Érvényes adatsor (néhány tulajdonsághoz most nem társítunk adatot pl. lakcím) Mivel a Szak többértékű, ezért példaként a 3. sor két szakot tartalmaz) Neptun kód Név Szak Dolgozat sorszám Cím Pontszám DCE213 Nagy Norbert Programtervező informatikus 1 Fogalomháló 80 ABC123 Kiss Ilona Mérnök informatikus; műszaki menedzser 2 Adatbányász at 79 DCE213 Nagy Norbet Programtervező informatikus 3 Klaszterezés 90
Hallgató és dolgozat közötti összefüggés Az előbbi adatsor érvényes volt, mert habár Nagy Norbert neve kétszer szerepel, de különböző témával, és egy hallgató több témát vállalhat. Érvénytelen adatsor pl Neptun kód Név Szak Sorszám Cím BHK123 Nagy Norbert Programtervező informatikus BHK124 Nagy Géza Programtervező informatikus 3 Fogalomháló 3 Fogalomháló Nem jó, mert ugyanazt a témát ketten választottak. A két egyed és a közte lévő kapcsolat ER szerinti ábrázolása:
Hallgató és dolgozat közötti összefüggés
Konzulens egyed elkészítése Egy konzulensenk is lehet lakcíme, van tanszéke, neve, azonosítója (személyigazolványszám), tanított tárgyak (több tárgyat tanít). A tárgyak ábrázolása történhetne többféleképpen: lehetne a tárgy is külön egyed, tárgykóddal, leírással stb.. Ilyenkor nem többértékű tulajdonsággal történne a reprezentálása, hanem a tárgy külön egyed lenne,kapcsolattal. Ha többértékű tulajdonsággal szeretnénk ábrázolni, akkor csak a neveit sorolnánk fel, mint az előbb a szaknál. Legyen a tárgy is külön egyed. Viszont ekkora a kapcsolatnál érdemes megemlíteni, hogy a tanár előadó vagy gyakorlatvezető, esetleg mindkettő-e. Konzulensnél a lakcímet nem ábrázoljuk, elképzeljük most, hogy úgy nézne ki, mint a hallgatónál.
Konzulens ER modellje és kapcsolata a témával
Konzulens és téma kapcsolata: több-több Több-több, mert egy témát több konzulens is vezethet, illetve attól még lehet egy konzulensne másik témája, és jelentkezője rá. Példa adatsor Sorszám Cím Személyigazolvány Konzulens neve 1 fogalomhálók uxt122 Nagy Feri 1 fogalomhálók utt234 Kis Gézu 2 adatbányászat uxt122 Nagy Feri 3 voxelek ddt122 János Béla Látható zölddel, hogy Nagy Feri a fogalomhálók témakörében vállal konzultálást, de itt más is van, tehát egy témát többen konzultálnak, de ugyanakkor ennek a konzulensnek van további témája is, így egy konzulensnek több témája is lehet.
Tárgy egyed Egy tárgynak van tárgykódja, ez egyedileg azonosítani fogja. Egy tárgynak van neve, és leírása (illetve lehetnének további jellemzői, kiknek vannak meghirdetve stb.., de velük nem foglalkozunk). Egy tanárnak több tárgyhoz lehet köze, de kérdés milyen köze van: előadó, gyakorlatvezető például. (de megfigyelhető hogy van ahol tárgyfelelős, de maga a tárgyban abban a félévben nem vesz részt). A konzulens és a tárgy közötti kapcsolat: egy konzulens éppen vihet több tárgyat is, esetleg van ahol előadó, van ahol gyakvezető, van ahol mindkettő. De így egy egy tárgy több különböző konzulenshez is tartozhat (pl. más az előadó, gyakorlatvezető, megosztják az előadást stb ). Így a kapcsolat több-több.
Tárgy egyed
Tárgy egyed és kapcsolat a konzulenssel Itt a kapcsolatnál említettük, hogy jó lenne jelezni, hogy a konzulensnek a tárggyal milyen a kapcsolata. Hol lenne ideális jelölni, hogy ő előadó, illetve gyakvezető. A tanár egyedbe azért lenne nehézkes jelölni, mivel ez tárgyfüggő, hol előadó, hol gyakvezető. A tárgynál nehéz lenne, mert valaki ott előadó, valaki gyakvezető. Mi lenne ha a kapcsolat megadáskor jeleznénk?így mikor egy tanárhoz egy tárgyat rendelünk, akkor megadjuk az összerendeléskor a viszonyát (így ha előadó és gyakvezető ugyanannál a tárgynál, akkor kétszer rendeljük össze). Tehát a kapcsolatnak is lehetnek az egyedhez hasonlóan tulajdonságai.
Tárgy egyed és kapcsolat a konzulenssel
Példa adatsor a tárgy és konzulensre A kapcsolat jellege a zölddel kiemelt tárolást (egy tanárhoz több tárgy, egy tárgyhoz több tanár) lehetőé teszi. Tárgykód Tárgy Szig Név Beosztás G1 Adatbázis 123456 Nagy Edgár gyakorlatezető G1 Adatbázis 123457 Kiss Ernő előadó G1 Adatbázis 123457 Kiss Ernő gyakorlatvezető G2 Architektúrák 145671 Nagy János előadó G2 Architektúrák 123457 Kiss Ernő gyakorlatvezető
Kapcsolatok elnevezése ER modellben szokás a kapcsolatoknak az egyedekhez hasonlóan nevet adni. A kapcsolat neve kifejezheti a két egyed viszonyát mégjobban. Pl. hallgató-téma: vállalja téma-konzulens: vezeti konzulens-tárgy:tanítja Teljes ER modell kapcsolatok elnevezésével: