Kľúčový rozdiel – ER vs EER Diagram
Kľúčový rozdiel medzi ER a EER diagramom je v tom, že ER diagram je vizuálna reprezentácia údajov na základe ER modelu a popisuje, ako sú entity v databáze navzájom prepojené. Diagram EER je vizuálna reprezentácia údajov založená na modeli EER, ktorý je rozšírením pôvodného modelu vzťahu medzi entitou (ER).
Pred vložením údajov do databázy by mala byť databáza navrhnutá. ER diagram sa používa na návrh databázy. Je založený na modeli vzťahov entít. Model vzťahu entít je model používaný na navrhovanie a reprezentáciu vzťahov medzi údajmi. Vzhľadom na zložitosť údajov sa model ER ďalej rozvíjal. Je známy ako Enhanced ER Model. Diagram EER je založený na vylepšenom modeli ER.
Čo je ER diagram?
Diagram ER predstavuje vzťah medzi rôznymi entitami. Entity, atribúty a vzťahy sú bežnými komponentmi ER diagramu. Entita je objekt reálneho sveta. V školskej databáze môžu byť entity ako Študent, Prednášajúci, Kurz atď. Ak je Študent entita, celá množina údajov Študenta sa nazýva množina entít. Niektoré entity môžu závisieť od inej entity. Tento druh entity je známy ako slabá entita.
Entity sú navzájom prepojené vzťahmi. Keď je jedna inštancia entity spojená s jednou inštanciou inej entity, nazýva sa vzťah jedna k jednej. Pre oddelenie je jeden manažér. Ide teda o pomer 1:1. Keď je jedna inštancia entity spojená s mnohými inštanciami inej entity, je známa ako vzťah jedna k mnohým (1:M). V oddelení môže byť viacero zamestnancov, ale zamestnanec je v jednom oddelení. Takže je to vzťah 1:M. Keď je veľa inštancií entity spojených s mnohými inštanciami inej entity, nazýva sa to vzťah jedna k mnohým (M:N). Zamestnanec môže pracovať na viacerých projektoch. Na jednom projekte môže byť aj viacero zamestnancov. Je to vzťah M:N. 1:1, 1:M a M:N sú binárne vzťahy. Keď entita súvisí sama so sebou, ide o rekurzívny vzťah. Vzťah tretieho stupňa je ternárny vzťah.
Každá entita má vlastnosti, ktoré ju popisujú. Sú známe ako atribúty. Entita Študent môže mať atribúty ako študent_id, meno, dátum_narodenia, telefónne číslo. Každá entita obsahuje kľúčový atribút, ktorý pomáha odlíšiť každý záznam v databáze. V entite študent možno identifikátor študenta považovať za kľúčový atribút, pretože pomáha jednoznačne identifikovať každé prečítanie. Niektoré atribúty môžu byť odvodené od iných atribútov. Atribút veku možno odvodiť pomocou atribútu data_of_birth. Preto je vek odvodený atribút. Ak má Študent viacero telefónnych čísel, atribút telefónne_číslo možno považovať za atribút s viacerými hodnotami. Atribút name možno rozdeliť na viacero atribútov, ako napríklad krstné meno a priezvisko. Potom je to zložený atribút.
Pozri nižšie uvedený diagram ER,
Obrázok 01: Diagram ER
Lektor je entita. Má id a špeciálne atribúty. ID je kľúčovým atribútom. Kurz vedenia lektora. Správanie je vzťah medzi lektorom a kurzom. Vzťah je označený tvarom kosoštvorca. Kľúčovým atribútom entity kurzu je kód kurzu. Projekt závisí od kurzu. Preto je Projekt slabým subjektom. Vzťah medzi kurzom a projektom je tiež slabý. Slabú entitu predstavujú nejaké dvojité obdĺžnikové boxy. Projekt realizuje Študent. Kľúčovým atribútom Študent je id. Študent môže mať viacero telefónov, takže ide o viachodnotový atribút. Atribút name sa ďalej delí na meno a priezvisko. Názov je teda zložený atribút.
Lektor vedie mnoho kurzov a lektor dohliada na mnoho projektov, takže sú medzi nimi vzťahom jeden k mnohým (1:M). Jeden kurz má jeden projekt a projekt robí jeden študent. Preto sú to vzťahy jedna k jednej (1:1).
Čo je diagram EER?
Keď sa aplikácia stala komplexnou, tradičný model ER nestačil na nakreslenie sofistikovaného diagramu. Preto sa model ER ďalej rozvíjal. Je známy ako Enhanced ER diagram. Existujú tri koncepty pridané k existujúcemu modelu ER v rozšírenom ER diagrame (EER). Sú to zovšeobecňovanie, špecializácia a agregácia. Vo všeobecnosti možno entity nižšej úrovne kombinovať, aby vytvorili entitu vyššej úrovne. Špecializácia je opakom zovšeobecňovania. V špecializácii možno entity vysokej úrovne rozdeliť na entity nižšej úrovne. Agregácia je proces, keď sa vzťah medzi dvoma entitami považuje za jednu entitu.
Obrázok 02: Zovšeobecnenie a špecializácia
Podľa vyššie uvedeného diagramu ER entity Študent a Lektor sú entity Osoba. Pri prechode zdola nahor zovšeobecní entity Študent a Lektor na entitu Osoba. Je to prístup zdola nahor. Pri prechode zhora nadol možno entitu Osoba ďalej špecializovať na Študenta a Lektora. Je to prístup zhora nadol. Atribúty mena a mesta osoby patria subjektu študenta subjektu lektora. Entita Študent má svoj vlastný atribút student_id a entita Lecturer má svoje meno lektora.
Príklad agregácie je nasledujúci.
Obrázok 03: Agregácia
Podľa vyššie uvedeného diagramu ER vzťah medzi centrom skúšok a skúškou funguje ako entita. Celá táto entita je vo vzťahu s entitou Študent. Keď študent navštívi skúšobné centrum, bude sa informovať o stredisku aj skúške. Preto, keď sa vzťah medzi dvoma entitami považuje za jednu entitu, ide o agregáciu.
Aká je podobnosť medzi diagramom ER a EER?
Na návrh databáz možno použiť ER aj EER diagramy
Aký je rozdiel medzi diagramom ER a EER?
ER verzus EER Diagram |
|
ER diagram je vizuálna reprezentácia údajov na základe modelu ER a popisuje, ako sú entity v databáze navzájom prepojené. | EER diagram je vizuálna reprezentácia údajov založená na modeli EER, ktorý je rozšírením pôvodného modelu vzťahu medzi entitou (ER). |
Model | |
ER diagram je založený na ER modeli. | diagram EER je založený na modeli EER. |
Summary – ER vs EER Diagram
Databázu je možné navrhnúť pomocou ER diagramu. EER diagram je vylepšený ER diagram. V EER sú ďalšie funkcie ako pôvodný ER diagram. ER diagram je vizuálna reprezentácia údajov na základe ER modelu a popisuje, ako sú entity v databáze navzájom prepojené. EER diagram je vizuálna reprezentácia dát, založená na EER modeli, ktorý je rozšírením pôvodného modelu entita-vzťah (ER). To je rozdiel medzi ER a EER diagramom.