Ce este ER Modeling? Învață cu Exemplu
⚡ Rezumat inteligent
Modelarea entitate-relație este o abordare grafică a proiectării bazelor de date care reprezintă obiectele din lumea reală ca entități, le descrie cu atribute și surprinde modul în care acestea se conectează prin relații, producând un plan clar înainte de construirea oricăror tabele.

Ce este ER Modeling?
Model de relație cu entitate (ER Modeling) este o abordare grafică a proiectării bazelor de date. Este un model de date la nivel înalt care definește elementele de date și relația lor pentru un sistem software specificat. Un model ER este utilizat pentru a reprezenta obiecte din lumea reală.
O entitate este un lucru sau un obiect din lumea reală care se distinge de mediul înconjurător. De exemplu, fiecare angajat al unei organizații este o entitate separată. În continuare sunt prezentate câteva dintre principalele caracteristici ale entităților.
- O entitate are un set de proprietăți.
- Proprietățile entității pot avea valori.
Să luăm din nou în considerare primul nostru exemplu. Un angajat al unei organizații este o entitate. Dacă „Peter” este programator (un angajat) la Microsoft, el poate avea atribute (proprietăți) precum numele, vârsta, greutatea, înălțimea etc. Este evident că acestea au valori relevante pentru el.
Fiecare atribut poate avea valori. În majoritatea cazurilor, un singur atribut are o singură valoare. Dar este posibil ca atributele să aibă și mai multe valori. De exemplu, vârsta lui Petru are o singură valoare. Dar proprietatea sa „numere de telefon” poate avea mai multe valori.
Entitățile pot avea relații între ele. Să luăm în considerare cel mai simplu exemplu. Presupunem că fiecare Microsoft Programatorului i se dă un computer. Este clar că și computerul lui Peter este o entitate. Peter folosește acel computer, iar același computer este folosit de Peter. Cu alte cuvinte, există o relație reciprocă între Peter și computerul său.
În modelarea entitate-relații, modelăm entitățile, atributele acestora și relațiile dintre entități.
De ce să folosiți un model ER?
Acum vă puteți gândi de ce să folosiți modelarea ER când putem pur și simplu creați baza de date și toate obiectele sale fără modelare ER? Una dintre provocările cu care se confruntă la proiectarea unei baze de date este faptul că designerii, dezvoltatorii și utilizatorii finali tind să vadă datele și utilizarea lor în mod diferit. Dacă această situație este lăsată neverificată, putem ajunge să producem un sistem de baze de date care nu îndeplinește cerințele utilizatorilor.
Instrumentele de comunicare înțelese de toate părțile interesate (utilizatori tehnici, precum și non-tehnici) sunt esențiale în producerea de sisteme de baze de date care să îndeplinească cerințele utilizatorilor. Modelele ER sunt exemple de astfel de instrumente.
Diagramele ER cresc, de asemenea, productivitatea utilizatorilor, deoarece pot fi ușor traduse în tabele relaționale.
Model îmbunătățit de relație între entități (EER).
Modelul Enhanced Entity Relationship (EER) este un model de date de nivel înalt care oferă extensii modelului original Entity Relationship (ER). Modelele EER acceptă un design mai detaliat. Modelarea EER a apărut ca o soluție pentru modelarea bazelor de date extrem de complexe.
EER folosește notația UML. UML este acronimul pentru Limbajul de modelare unificat; este un limbaj de modelare de uz general utilizat la proiectarea sistemelor orientate pe obiecte. Entitățile sunt reprezentate ca diagrame de clasă. Relațiile sunt reprezentate ca asociații între entități. Diagrama de mai jos ilustrează o diagramă ER folosind Notație UML.
Studiu de caz: Diagrama ER pentru biblioteca video „MyFlix”
Să lucrăm acum cu sistemul de baze de date MyFlix Video Library pentru a înțelege conceptul diagramelor ER. Vom folosi această bază de date pentru toate lucrările practice din acest tutorial.
MyFlix este o entitate de afaceri care închiriază filme membrilor săi. MyFlix și-a stocat înregistrările manual. Conducerea acum vrea să treacă la a Baze de date.
Să analizăm pașii pentru dezvoltarea unei diagrame EER pentru această bază de date:
- Identificați entitățile și determinați relațiile care există între ele.
- Fiecare entitate, atribut și relație ar trebui să aibă nume adecvate, ușor de înțeles și de către persoanele fără cunoștințe tehnice.
- Relațiile nu ar trebui să fie conectate direct între ele. Relațiile ar trebui să conecteze entitățile.
- Fiecare atribut dintr-o entitate dată ar trebui să aibă un nume unic.
Entități din biblioteca „MyFlix”
Entitățile care urmează să fie incluse în nostru Diagrama ER sunt:
- Membri – această entitate va deține informații despre membri.
- Filme – această entitate va conține informații despre filme.
- Categorii – această entitate va conține informații care plasează filmele în diferite categorii, cum ar fi „Dramă”, „Acțiune” și „Epic” etc.
- Închirieri de filme – această entitate va deține informații despre filmele închiriate membrilor.
- Plăți – această entitate va deține informații despre plățile efectuate de membri.
Definirea relațiilor între entități
Membrii și filmele
Următoarele sunt valabile în ceea ce privește interacțiunile dintre cele două entități.
- Un membru poate închiria mai mult de un film într-o anumită perioadă.
- Un film poate fi închiriat de mai mult de un membru într-o anumită perioadă.
Din scenariul de mai sus, putem observa că natura relației este de tip „many-to-many”. Bazele de date relaționale nu acceptă relații de tip „many-to-many”. Trebuie să introducem o entitate joncțiune. Acesta este rolul pe care îl joacă entitatea MovieRentals. Are o relație unu-la-many cu tabelul Members și o altă relație unu-la-many cu tabelul Movies.
Filme și categorii de entități
Următoarele sunt valabile despre filme și categorii.
- Un film poate aparține unei singure categorii, dar o categorie poate avea mai multe filme.
Putem deduce din aceasta că natura relației dintre tabelele de categorii și filme este de tip unu-la-mai-mulți.
Membrii și entitățile de plată
Următoarele sunt valabile pentru membri și plăți.
- Un membru poate avea un singur cont, dar poate efectua mai multe plăți.
Putem deduce din aceasta că natura relației dintre membri și entitățile de plată este de tip unu-la-mai-mulți.
Creați modelul EER folosind MySQL Banc de lucru
In MySQL Banc de lucru, faceți clic pe butonul „+”.
Double Faceți clic pe butonul Adăugare diagramă pentru a deschide spațiul de lucru pentru diagrame ER.
Apare următoarea fereastră.
Să ne uităm la cele două obiecte cu care vom lucra.
- Obiectul tabel
ne permite să creăm entități și să definim atributele asociate cu entitatea respectivă. - Relația dintre loc
Butonul ne permite să definim relațiile dintre entități.
Entitatea Membri va avea următoarele atribute
- Numar de membru
- Nume complete
- Gen
- Data nașterii
- Adresă fizică
- Adresa postală
Să creăm acum tabelul Membri
1. Trageți obiectul tabel din panoul de instrumente.
2. Plasați-l în zona spațiului de lucru. Apare o entitate numită tabelul 1.
3. Double Faceți clic pe el. Apare fereastra de proprietăți afișată mai jos.
În continuare,
- Schimbați tabelul 1 în Membri.
- Editați valoarea implicită idtable1 la membership_number.
- Faceți clic pe linia următoare pentru a adăuga următorul câmp.
- Procedați la fel pentru toate atributele identificate în entitatea Membri.
Fereastra proprietăților dvs. ar trebui să arate acum astfel.
Repetați pașii de mai sus pentru toate entitățile identificate.
Spațiul de lucru pentru diagramă ar trebui să arate acum ca cel prezentat mai jos.
Să creăm o relație între membri și închirieri de filme
- Selectați relația de loc utilizând instrumentul coloane existente.
- Faceți clic pe membership_number în tabelul Members.
- Faceți clic pe numărul_referinței în tabelul Închirieri_filme.
Repetați pașii de mai sus pentru alte relații. Diagrama ER ar trebui să arate acum astfel:









