Entitáskapcsolati (ER) diagrammodell DBMS-sel Példa
⚡ Okos összefoglaló
Az entitáskapcsolati (ER) diagram modell DBMS példával Egy strukturált módszert mutat be az adatok és azok összekapcsolódásainak vizuális ábrázolására relációs adatbázisokban. Peter Chen javaslata egy fogalmi modellezési alapot biztosít az entitások, attribútumok, kapcsolatok és azok elemeinek pontos meghatározásához.

Mi az ER diagram?
Az Entitáskapcsolat-diagram (ER-diagram) egy hatékony vizuális eszköz relációs adatbázis-struktúrák tervezéséhez. Peter Chen javasolta először 1976-ban, és egy olyan fogalmi modellezési alapot biztosít, amely pontosan meghatározza az entitásokat, attribútumokat, kapcsolatokat és azok kardinalitásait. Ez az oktatóanyag mindent lefed az alapfogalmaktól a haladó technikákig, segítve az adatbázisséma-tervezés elsajátítását.
Az ER-diagramok különböző szimbólumokat tartalmaznak, amelyek téglalapokat használnak az entitások, oválisokat az attribútumok, és rombusz alakúakat a kapcsolatok ábrázolására.
Első pillantásra egy ER-diagram nagyon hasonlít egy folyamatábrára. Az ER-diagram azonban számos speciális szimbólumot tartalmaz, és ezek jelentései egyedivé teszik ezt a modellt. Az ER-diagram célja az entitás keretrendszerének infrastruktúrájának ábrázolása.

Az ER modellek története
Peter Chen 1976-ban javasolta az ER-diagramot „Az entitás-reláció modell: Az adatok egységes nézete felé” című alapvető cikkében. Célja egy egységes konvenció létrehozása volt, amely mind relációs adatbázisokhoz, mind hálózatokhoz használható. Chen az ER-modellt egy olyan koncepcionális modellezési megközelítésként képzelte el, amely áthidalja a szakadékot a valós követelmények és a technikai adatbázis-megvalósítás között.
Azóta az ER modell különféle jelölési rendszerekkel fejlődött, beleértve a Chen-jelölést (az eredeti), a varjúláb-jelölést (népszerű a modern eszközökben) és az UML-alapú megközelítéseket. Ezen eltérések ellenére az alapfogalmak minden implementációban egységesek maradnak.
Miért érdemes ER diagramokat használni?
Az ER diagramok számos előnnyel járnak az adatbázis-tervezés és -fejlesztés terén:
- Vizuális kommunikáció: Világos vizuális ábrázolást nyújtanak, amelyet mind a műszaki, mind a nem műszaki beállítottságú érdekelt felek megérthetnek.
- Fejlesztési terv: Pontosan megmutatják, hogyan kell a tábláknak kapcsolódniuk, és milyen mezőket fognak tartalmazni az egyes táblák.
- Fordításra kész: Az ER diagramok közvetlenül relációs táblázatokká alakíthatók, így gyorsan felépíthet adatbázisokat.
- Hibamegelőzés: Segítenek a tervezési hibák és redundanciák azonosításában a megvalósítás előtt, időt és erőforrásokat takarítva meg.
- Dokumentáció: Tartós dokumentációként szolgálnak, amelyek segítenek az új csapattagoknak megérteni a rendszer architektúráját.
- Rendszer elemzése: Segítenek azonosítani a rendszerben létező összes entitást és a közöttük lévő kapcsolatokat.
ER diagram összetevői
Minden ER-diagram három fő összetevőből épül fel: entitásokból, attribútumokból és kapcsolatokból. Az egyes összetevők és kölcsönhatásaik megértése elengedhetetlen a hatékony adatbázis-tervek létrehozásához.
ER diagram példák
Például egy egyetemi adatbázisban lehetnek Hallgatók, Kurzusok és Oktatók entitásaink. Egy hallgató entitás rendelkezhet olyan attribútumokkal, mint a Rollno (azonosító), a Name (név) és a DeptID (részlegazonosító). Kapcsolatban állhatnak a Kurzusokkal és az Oktatókkal.
szervezetek
Egy entitás bármely valós objektumot képvisel – élőt vagy élettelent –, amely egyértelműen azonosítható, és amelyről adatok tárolhatók. Lehet fizikai dolog, a vállalkozással kapcsolatos tény vagy a való világban történt esemény. Az entitások lehetnek emberek, helyek, tárgyak, események vagy fogalmak.
Entitások kategóriánkénti példái:
- Személy: Alkalmazott, Diák, Páciens, Ügyfél
- hely: Üzlet, Épület, Iroda, Raktár
- Tárgy: Gép, Termék, Autó, Könyv
- Esemény: Eladás, Regisztráció, Megújítás, Tranzakció
- Koncepció: Fiók, Tanfolyam, Osztály, Projekt
Entitáskészlet
Egy entitáshalmaz hasonló entitások csoportja, amelyek közös attribútumokkal rendelkeznek. Például egy egyetem összes hallgatója egy „Hallgató” entitáshalmazt alkot. Az ER-diagramokban az entitásokat téglalapok segítségével ábrázolják, amelyekben az entitás neve szerepel.
Az entitásokat a tulajdonságaik, más néven attribútumok képviselik. Minden attribútumnak külön értéke van. Például egy diák entitásnak lehet neve, életkora és osztálya attribútumaként.
Erős entitások vs. gyenge entitások
Az entitásokat erősnek vagy gyengének minősítik az önálló létezésük képessége alapján. Ennek a megkülönböztetésnek a megértése kulcsfontosságú a megfelelő adatbázis-tervezéshez.
Egy erős entitásnak saját elsődleges kulcsa van, és függetlenül létezhet. Például egy „Student” entitás egyedileg azonosítható a Student_ID segítségével, anélkül, hogy bármilyen más entitástól függene.
Egy gyenge entitásnak nincs saját elsődleges kulcsa, és egy erős entitástól (a tulajdonos entitástól) függ az azonosítása. Egy részleges kulcsot (diszkriminátort) használ a tulajdonos elsődleges kulcsával kombinálva az egyediség eléréséhez. Például egy bankrendszerben egy „Tranzakció” entitás egy „Számla” entitástól függ – a tranzakciószám önmagában nem egyedi a teljes adatbázisban, de a számlaszámmal kombinálva egyedivé válik.
| Erős entitás | Gyenge entitás |
|---|---|
| Saját elsődleges kulcsa van | Nincs elsődleges kulcsa; részleges kulcsot használ |
| Egyetlen téglalap ábrázolja | Dupla téglalap ábrázolja |
| Az elsődleges kulcs folytonos vonallal van aláhúzva | A részleges kulcsot szaggatott vonallal húztuk alá |
| Függetlenül is létezhet | A létezése a tulajdonos entitástól függ |
| Egyetlen gyémánt kapcsolattal kapcsolódik össze | Dupla rombuszhoz kötve (azonosító kapcsolat) |
| Példa: Diák, Alkalmazott, Termék | Példa: Tranzakció, Függő, Rendelési_tétel |
Kapcsolat
A kapcsolat két vagy több entitás közötti kapcsolatot jelöl. A kapcsolatokat jellemzően igék vagy igei szerkezetek segítségével azonosítják, amelyek leírják, hogyan hatnak egymásra az entitások. Az ER diagramokon a kapcsolatokat rombusz alakzatok ábrázolják. Példa: Tom a kémia tanszéken dolgozik.
Az entitások részt vesznek a kapcsolatokban. Gyakran azonosíthatunk kapcsolatokat igékkel vagy igei kifejezésekkel.
Példák:
- Ön részt vesz ezen az előadáson
- én tartom az előadást
- Egy diák előadáson vesz részt
- Egy előadó előadást tart
Attribútumok
Az attribútum egy tulajdonság vagy jellemző, amely egy entitást vagy kapcsolatot ír le. Az attribútumok biztosítják azokat a részletes információkat, amelyek minden entitáspéldányt egyedivé és értelmessé tesznek. Az ER-diagramokban az attribútumokat oválisok (kihagyáspontok) ábrázolják, amelyeket egy vonal köt össze a szülő entitással.
Például egy Diák entitás olyan attribútumokkal rendelkezhet, mint a Diák_azonosító, Név, Születési_dátum, E-mail cím és Telefonszám.
Az attribútumok típusai
| Attribútum típusa | Leírás | Példa |
|---|---|---|
| Egyszerű (Atomic) | Nem osztható tovább kisebb részekre | Telefonszám, társadalombiztosítási szám, e-mail cím |
| Összetett | Kisebb alkattribútumokra bontható | Teljes név (Vezetéknév, Keresztnév, Középső név), Cím (Utca, Város, Irányítószám) |
| Származtatott | Az értéket más attribútumok alapján számítják ki; nem tárolják közvetlenül | Életkor (születési dátum alapján), Teljes ár |
| Többértékű | Több értéket is tárolhat egyetlen entitáshoz | Telefon Numbers, E-mail címek, Készségek |
| Kulcs attribútum | Egyedileg azonosítja az egyes entitáspéldányokat (elsődleges kulcs) | Diák_azonosító, Alkalmazott_azonosító, ISBN |
Kulcs tipp: Az ER-diagramokon a főbb attribútumok aláhúzott nevükkel jelennek meg. A származtatott attribútumok szaggatott oválisok, a többértékű attribútumok pedig dupla oválisok.
Kardinalitás (Kapcsolattípusok)
A kardinalitás meghatározza egy kapcsolat numerikus korlátait – konkrétan azt, hogy egy entitás hány példánya társítható egy másik entitás példányaihoz. A kardinalitás megértése elengedhetetlen a hatékony adatbázis-struktúrák tervezéséhez.
1. Egy az egyhez (1:1)
Az A halmaz egy entitása legfeljebb egy B halmaz entitással társítható, és fordítva.
Példa: Egy diákhoz pontosan egy diákazonosító tartozik, és minden diákazonosító pontosan egy diákhoz tartozik.
2. Egy-a-sokhoz (1:N)
Az A halmaz egy entitása több B halmazbeli entitással is társítható, de a B halmaz minden entitása csak egy A halmazbeli entitással van társítva.
Példa: Egy osztály több diákból áll.
3. Sok az egyhez (N:1)
Az A halmazból származó több entitás társítható a B halmazból származó egy entitáshoz.
Például sok tanuló ugyanabba az osztályba tartozik.
4. Sok-sok-sok (M:N)
Az A halmazból származó több entitás társítható a B halmazból származó több entitással, és fordítva.
Például a Hallgatók csoportként több oktatóhoz, az oktatói tagok pedig több hallgatóhoz is társíthatók.
ER diagram szimbólumai és jelölései
Az ER diagramok szabványosított szimbólumokat használnak a különböző komponensek ábrázolására. Bár számos jelölési rendszer létezik, a két legszélesebb körben használt a Chen-jelölés és a szarkalábak-jelölés.
Chen-jelölés
A Peter Chen által 1976-ban kidolgozott Chen-jelölésrendszer geometriai alakzatokat használ a különböző elemek ábrázolására:
| Szimbólum | Név | jelentése |
|---|---|---|
| téglalap | Entity | Erős entitás (pl. Diák, Termék) |
| Double téglalap | Gyenge entitás | Egy másiktól függő entitás (pl. tranzakció) |
| Ellipszis/Ovális | Attribútum | Egy entitás tulajdonsága (pl. név, azonosító) |
| Double ellipszis | Többértékű attribútum | Több értékkel rendelkező attribútum (pl. Telefonszám Numbers) |
| Szaggatott ellipszis | Származtatott attribútum | Számított érték (pl. életkor születési dátum alapján) |
| gyémánt | Kapcsolat | Entitások közötti kapcsolat (pl. Regisztrációk) |
| Double gyémánt | Kapcsolat azonosítása | Kapcsolat a gyenge entitással |
| vonal | Link | Összeköti az alkatrészeket |
| Aláhúzott szöveg | Elsődleges kulcs | Az entitás egyedi azonosítója |
Szarkalábak jelölés
A szarkalábak-jelölés (más néven IE-jelölés) gyakrabban használt a modern adatbázis-tervező eszközökben. Különböző sorvégeket használ a kardinalitás ábrázolására, és különösen hatékony a kapcsolatok „több” oldalának megjelenítésére.
| Szimbólum Description | Jelentés |
|---|---|
| Egyetlen függőleges vonal (|) | Kötelező Egy (pontosan egy) |
| Kör vonallal (O|) | Opcionális Egy (nulla vagy egy) |
| Szarkalábak csíkkal (>|) | Kötelező Sok (egy vagy több) |
| Szarkalábak körrel (>O) | Opcionális Sok (nulla vagy több) |
Chen-jelölés vs. szarkalábak: Mikor használjuk az egyiket
| Aspect | Chen-jelölés | Szarkalábak jelölés |
|---|---|---|
| Legjobbak: | Koncepcionális modellezés, akadémiai felhasználás | Fizikai/logikai modellezés, ipari felhasználás |
| Attribútum megjelenítése | Vizuálisan megjeleníti az összes attribútumot | Az entitásmezőben felsorolja az attribútumokat |
| számosságú | Számokat használ (1, N, M) | Vizuális szimbólumokat használ |
| Bonyolultság | Zsúfolttá válhat | Kompaktabb és tisztább |
| Szerszámtámogatás | Korlátozott modern eszköztámogatás | Széles körben támogatott az eszközökben |
Entitáskapcsolati diagram (ERD) létrehozása
Ebben az ER Diagram (ERD) oktatóanyagban megtanuljuk, hogyan hozhatunk létre egy ER Diagramot. Az alábbiakban a létrehozásának lépései láthatók:
Vizsgáljuk meg őket egy entitáskapcsolati diagrammal:
Egy egyetemen a hallgató kurzusokra iratkozik be. A hallgatónak legalább egy kurzushoz hozzá kell rendelnie. Minden kurzust egyetlen professzor tanít. Az oktatás minőségének fenntartása érdekében egy professzor csak egy kurzust tarthat.
1. lépés) Az entitás azonosítása
Három entitásunk van:
- diák
- Tanfolyam
- Egyetemi tanár
2. lépés: Kapcsolatazonosítás
A következő két kapcsolattal rendelkezünk:
- A diák az kijelölt tanfolyam
- A professzor szállít tanfolyam
3. lépés) A kardinalitás azonosítása
A problémafelvetésből tudjuk, hogy:
- Tanuló kijelölhető többszörös tanfolyamok
- Professzor csak szállíthat egy tanfolyam
4. lépés) Azonosítsa az attribútumokat
A szervezet által jelenleg karbantartott fájlokat, űrlapokat, jelentéseket és adatokat kell tanulmányoznia az attribútumok azonosításához. Interjúkat is készíthet különböző érdekelt felekkel az entitások azonosításához. Kezdetben fontos az attribútumok azonosítása anélkül, hogy azokat egy adott entitáshoz rendelné.
Miután elkészült az attribútumok listája, le kell rendelni őket az azonosított entitásokhoz. Győződjön meg arról, hogy egy attribútum pontosan egy entitáshoz párosul. Ha úgy gondolja, hogy egy attribútumnak egynél több entitáshoz kellene tartoznia, használjon módosítót az egyedivé tételéhez.
A leképezés befejezése után azonosítsa az elsődleges kulcsokat. Ha egy egyedi kulcs nem elérhető, hozzon létre egyet.
| Entity | Elsődleges kulcs | Attribútum |
|---|---|---|
| diák | Diákigazolvány | Tanuló név |
| Egyetemi tanár | Munkavállalói azonosító | ProfesszorNév |
| Tanfolyam | Course_ID | A tantárgy neve |
A Kurzus Entitás attribútumai lehetnek Időtartam, Kreditek, Feladatok stb. Az egyszerűség kedvéért csak egy attribútumot vettünk figyelembe.
5. lépés) ERD létrehozása
Egy entitáskapcsolat-diagram modernebb ábrázolása: példa:
Hatékony ER-diagramok bevált gyakorlatai
Kövesse az alábbi irányelveket a világos, karbantartható és hatékony ER-diagramok létrehozásához:
- Redundancia kiküszöbölése: Távolítsa el az ismétlődő entitásokat, attribútumokat vagy kapcsolatokat.
- Használjon egyértelmű elnevezési konvenciókat: Használjon következetes, leíró neveket. Kerülje a rövidítéseket.
- Ellenőrizd a követelményeknek megfelelően: Győződjön meg arról, hogy a diagram minden adattárolási igényt kielégít.
- Ne komplikáld túl: Hozz létre több diagramot különböző szinteken, ahelyett, hogy egyetlen zsúfolt diagramot készítenél.
- Használj takarékosan színeket: Használj következetes színeket a kategóriák kiemeléséhez.
- Dokumentumfeltevések: Mellékeljen megjegyzéseket, amelyekben elmagyarázza az üzleti szabályokkal kapcsolatos feltételezéseket.
- RevÉrdekelt felekkel való kapcsolatfelvétel: Kérje meg az üzleti felhasználókat és a műszaki csapatot, hogy nézzék át a diagramot.
- Verziókezelés: A verziók karbantartása a terv fejlődésével párhuzamosan.
ER diagramok vs. UML osztálydiagramok
Bár mind az ER-diagramokat, mind az UML-osztálydiagramokat adatmodellezésre használják, eltérő célokat és kontextusokat szolgálnak. A hatékony rendszertervezéshez fontos megérteni, hogy mikor melyiket kell használni.
| Aspect | ER diagram | UML osztálydiagram |
|---|---|---|
| Elsődleges cél | Adatbázis-tervezés | Szoftver/objektumtervezés |
| Összpontosít | Adatok és kapcsolatok | Objektumok, metódusok és viselkedések |
| Mód/OperaTIONS | Nem támogatott | Teljes mértékben támogatott |
| Öröklés | Korlátozott (csak az EER-ben) | Teljes támogatás |
| Ipari felhasználás | Adatbázis-adminisztrátorok, adatelemzők | Szoftverfejlesztők, építészek |















