Ce este ER Modeling? Învață cu Exemplu

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ă.

An Entitate este un lucru sau obiect din lumea reală care se distinge de mediul înconjurător. De exemplu, fiecare angajat al unei organizații este o entitate separată. Următoarele sunt câteva dintre caracteristicile majore 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 un programator (un angajat) La Microsoft, el poate avea atribute (proprietăți) cum ar fi numele, vârsta, greutatea, înălțimea, etc. Este evident că acestea dețin valori relevante pentru el.

Fiecare atribut poate avea Valori. În cele mai multe cazuri, un singur atribut are o singură valoare. Dar este posibil ca atributele să aibă valori multiple de asemenea. De exemplu, vârsta lui Petru are o singură valoare. Dar proprietatea lui „numere de telefon” poate avea mai multe valori.

Entitățile pot avea relaţii unul cu altul. Să luăm în considerare cel mai simplu exemplu. Să presupunem că fiecare Microsoft Programatorului i se dă un computer. Este clar că asta Computerul lui Peter este, de asemenea, o entitate. Peter folosește acel computer și același computer este folosit de Peter. Cu alte cuvinte, există o relație reciprocă între Peter și computerul său.

In Modelarea relațiilor cu entitate, modelăm entități, atributele lor și relațiile dintre entități.

Model îmbunătățit de relație între entități (EER).

Modelul Enhanced Entity Relationship (EER) este un model de date la nivel înalt care oferă extensii la original Relația cu entitatemodel (ER). Modelele EER acceptă mai multe detalii de design. 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.


Relație îmbunătățită între entități (EER)

De ce să folosiți modelul 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 sistemelor de baze de date care îndeplinesc cerințele utilizatorilor. Modelele ER sunt exemple de astfel de instrumente.

Diagramele ER cresc, de asemenea, productivitatea utilizatorului, deoarece pot fi traduse cu ușurință în tabele relaționale.

Studiu de caz: diagrama ER pentru Biblioteca video „MyFlix”.

Să lucrăm acum cu sistemul de bază de date MyFlix Video Library pentru a ajuta la înțelegerea conceptului de diagrame ER. Vom folosi această bază de date pentru toate detaliile în restul acestui 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ă ne uităm la pașii de dezvoltare a diagramei EER pentru această bază de date -

  1. Identificați entitățile și determinați relațiile care există între ele.
  2. Fiecare entitate, atribut și relație ar trebui să aibă nume adecvate, care să poată fi înțelese cu ușurință și de persoanele netehnice.
  3. Relațiile nu ar trebui să fie conectate direct între ele. Relațiile ar trebui să conecteze entitățile.
  4. 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 sunteți;

  • Membri actuali – această entitate va deține informații despre membri.
  • Filme – această entitate va deține informații referitoare la filme
  • Categorii – această entitate va deț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ăţile – 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 vedea că natura relației este multi-la-mulți. Bazele de date relaționale nu acceptă relații multi-la-multe. Trebuie să introducem o entitate de joncțiune. Acesta este rolul pe care îl joacă entitatea MovieRentals. Are o relație unu-la-mulți cu tabelul de membri și o altă relație unu-la-mulți cu tabelul de filme.

Filme și categorii de entități

Următoarele sunt valabile despre filme și categorii.

  • Un film poate aparține doar unei categorii, dar o categorie poate avea mai multe filme.

Putem deduce din aceasta că natura relației dintre categorii și tabelul de filme este una la mai multe.

Membrii și entitățile de plată

Următoarele sunt valabile despre 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 una-la-mulți.

Acum să creăm modelul EER folosind MySQL Banc de lucru

În MySQL banc de lucru, faceți clic pe butonul „+”.

Definirea relațiilor între entități

Double faceți clic pe butonul Adăugare diagramă pentru a deschide spațiul de lucru pentru diagramele ER.

Definirea relațiilor între entități

Apare următoarea fereastră

Definirea relațiilor între entități

Să ne uităm la cele două obiecte cu care vom lucra.

  • Definirea relațiilor între entitățiObiectul tabel ne permite să creăm entități și să definim atributele asociate cu o entitate particulară.
  • Definirea relațiilor între entitățiButonul de relație a locului ne permite să definim relații între entități.

membrii entitatea va avea următoarele atribute

  • Numar de membru
  • Nume complete
  • Gen
  • Data nașterii
  • Adresă fizică
  • Adresa postală

Acum să creăm tabelul de membri

1.Trageți obiectul tabel din panoul de instrumente

2. Aruncați-l în zona spațiului de lucru. Apare o entitate numită tabelul 1

3.Double apasa pe el. Apare fereastra de proprietăți prezentată mai jos

Definirea relațiilor între entități

Următorul ,

  1. Schimbați tabelul 1 în Membri
  2. Editați idtable1 implicit la membership_number
  3. Faceți clic pe linia următoare pentru a adăuga următorul câmp
  4. Faceți același lucru pentru toate atributele identificate în entitatea membrilor.

Fereastra proprietăților dvs. ar trebui să arate acum astfel.

Definirea relațiilor între entități

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.

Definirea relațiilor între entități

Să creăm o relație între membri și închirieri de filme

  1. Selectați relația de locație folosind și coloanele existente
  2. Faceți clic pe membership_number din tabelul Membri
  3. Faceți clic pe reference_number din tabelul MovieRentals

Definirea relațiilor între entități

Repetați pașii de mai sus pentru alte relații. Diagrama dvs. ER ar trebui să arate acum astfel -

Rezumat

  • Forma completă a ER este Entity and Relationships Diagrams. Ei joacă un rol foarte important în proiectarea bazei de date proces. Ele servesc ca instrument de comunicare non-tehnic pentru oameni tehnici și non-tehnici.
  • Entitățile reprezintă lucruri din lumea reală; ele pot fi conceptuale ca o comandă de vânzare sau fizice, cum ar fi un client.
  • Toate entitățile trebuie să primească nume unice.
  • Modelele ER permit, de asemenea, proiectanților de baze de date să identifice și să definească relațiile care există între entități.

Întregul model ER este atașat mai jos. Îl poți importa pur și simplu în MySQL Banc de lucru

Faceți clic aici pentru a descărca modelul ER