Što je ER modeliranje? Učite s primjerom

Što je ER modeliranje?

Model odnosa entiteta (ER Modeling) je grafički pristup dizajnu baze podataka. To je model podataka visoke razine koji definira elemente podataka i njihov odnos za određeni softverski sustav. ER model se koristi za predstavljanje objekata iz stvarnog svijeta.

An Entitetska je stvar ili objekt u stvarnom svijetu koji se razlikuje od okolne okoline. Na primjer, svaki zaposlenik organizacije je zaseban entitet. Slijede neke od glavnih karakteristika entiteta.

  • Entitet ima skup svojstava.
  • Svojstva entiteta mogu imati vrijednosti.

Razmotrimo ponovno naš prvi primjer. Zaposlenik organizacije je entitet. Ako je "Peter" programer (an zaposlenik) na Microsoft, može imati atributi (osobine) kao što su ime, dob, težina, visina, itd. Očito je da one imaju vrijednosti relevantne za njega.

Svaki atribut može imati Vrijednosti. U većini slučajeva jedan atribut ima jednu vrijednost. Ali moguće je za atribute imati više vrijednosti također. Na primjer, Petrova dob ima jednu vrijednost. Ali njegovo svojstvo "telefonski brojevi" može imati više vrijednosti.

Entiteti mogu imati odnosi jedno s drugim. Razmotrimo najjednostavniji primjer. Pretpostavimo da svaki Microsoft Programer dobiva računalo. Jasno je da to Peterovo računalo također je entitet. Peter koristi to računalo, a isto računalo koristi i Peter. Drugim riječima, postoji međusobni odnos između Petera i njegovog računala.

In Modeliranje odnosa entiteta, modeliramo entitete, njihove atribute i odnose među entitetima.

Model poboljšanog odnosa entiteta (EER).

Enhanced Entity Relationship (EER) Model je podatkovni model visoke razine koji pruža proširenja izvornog Odnos entiteta(ER) model. EER modeli podržavaju detaljniji dizajn. EER Modeling pojavio se kao rješenje za modeliranje vrlo složenih baza podataka.

EER koristi UML notaciju. UML je akronim za Jedinstveni jezik za modeliranje; to je jezik za modeliranje opće namjene koji se koristi pri projektiranju objektno orijentiranih sustava. Entiteti su predstavljeni kao dijagrami klasa. Odnosi su predstavljeni kao asocijacije između entiteta. Donji dijagram ilustrira ER dijagram koji koristi UML notacija.


Poboljšani odnos entiteta (EER)

Zašto koristiti ER Model?

Sada možete pomisliti zašto koristiti ER modeliranje kada možemo jednostavno stvoriti bazu podataka i sve njegove objekte bez ER modeliranja? Jedan od izazova s ​​kojima se susreću prilikom dizajniranja baze podataka je činjenica da dizajneri, programeri i krajnji korisnici imaju tendenciju drugačije gledati na podatke i njihovu upotrebu. Ako se ova situacija ne kontrolira, možemo proizvesti sustav baze podataka koji ne zadovoljava zahtjeve korisnika.

Komunikacijski alati koje razumiju svi dionici (tehnički i netehnički korisnici) ključni su u proizvodnji sustava baza podataka koji ispunjavaju zahtjeve korisnika. ER modeli su primjeri takvih alata.

ER dijagrami također povećavaju produktivnost korisnika jer se mogu lako prevesti u relacijske tablice.

Studija slučaja: ER dijagram za “MyFlix” videoteku

Poradimo sada sa sustavom baze podataka MyFlix Video Library kako bismo lakše razumjeli koncept ER dijagrama. Koristit ćemo ovu bazu podataka za sve praktične radnje u ostatku ovog vodiča

MyFlix je poslovni subjekt koji svojim članovima iznajmljuje filmove. MyFlix je svoje zapise pohranjivao ručno. Uprava se sada želi preseliti u a DBMS

Pogledajmo korake za razvoj EER dijagrama za ovu bazu podataka-

  1. Identificirajte entitete i odredite odnose koji među njima postoje.
  2. Svaki entitet, atribut i odnos trebaju imati odgovarajuća imena koja mogu lako razumjeti i netehničari.
  3. Odnosi ne bi trebali biti izravno povezani jedni s drugima. Odnosi bi trebali povezivati ​​entitete.
  4. Svaki atribut u određenom entitetu treba imati jedinstveno ime.

Entiteti u biblioteci “MyFlix”.

Subjekti koji će biti uključeni u naše ER dijagram su;

  • POSLOVNI ČLANOVI – ovaj subjekt će imati podatke o članovima.
  • Filmovi – ovaj entitet će imati informacije o filmovima
  • Kategorije – ovaj entitet će sadržavati informacije koje svrstavaju filmove u različite kategorije kao što su "Drama", "Akcija" i "Ep" itd.
  • Iznajmljivanje filmova – ovaj entitet će imati podatke o filmovima koji se iznajmljuju članovima.
  • Plaćanja – ovaj će subjekt imati podatke o uplatama članova.

Definiranje odnosa među entitetima

Članovi i filmovi

Sljedeće vrijedi za interakcije između dva entiteta.

  • Član može unajmiti više od jednog filma u određenom razdoblju.
  • Film može iznajmiti više od jednog člana u određenom razdoblju.

Iz gornjeg scenarija možemo vidjeti da je priroda odnosa više-prema-više. Relacijske baze podataka ne podržavaju odnose više-prema-više. Moramo uvesti spojni entitet. Ovo je uloga koju igra entitet MovieRentals. Ima odnos jedan-prema-više s tablicom članova i još jedan odnos jedan-prema-više s tablicom filmova.

Filmovi i entiteti kategorija

Sljedeće vrijedi za filmove i kategorije.

  • Film može pripadati samo jednoj kategoriji, ali kategorija može imati više od jednog filma.

Iz ovoga možemo zaključiti da je priroda odnosa između kategorija i tablice filmova jedan prema više.

Članovi i subjekti platnog prometa

O članovima i plaćanjima vrijedi sljedeće

  • Član može imati samo jedan račun, ali može izvršiti više uplata.

Iz ovoga možemo zaključiti da je priroda odnosa između članova i subjekata za plaćanje jedan prema više.

Kreirajmo sada EER model pomoću MySQL Radna tezga

u MySQL radni stol , Kliknite – gumb “+”.

Definiranje odnosa među entitetima

Double kliknite gumb Dodaj dijagram za otvaranje radnog prostora za ER dijagrame.

Definiranje odnosa među entitetima

Pojavljuje se sljedeći prozor

Definiranje odnosa među entitetima

Pogledajmo dva objekta s kojima ćemo raditi.

  • Definiranje odnosa među entitetimaObjekt table nam omogućuje stvaranje entiteta i definiranje atributa povezanih s određenim entitetom.
  • Definiranje odnosa među entitetimaGumb za odnos mjesta omogućuje nam definiranje odnosa između entiteta.

The članovi entitet će imati sljedeće atribute

  • Članski broj
  • Puna imena
  • rod
  • Datum rođenja
  • Fizička adresa
  • poštanska adresa

Kreirajmo sada tablicu članova

1. Povucite objekt tablice s ploče s alatima

2. Ispustite ga u područje radnog prostora. Pojavljuje se entitet pod nazivom tablica 1

3.Double kliknite na njega. Pojavljuje se prozor svojstava prikazan ispod

Definiranje odnosa među entitetima

Sljedeći ,

  1. Promijeni tablicu 1 u Članovi
  2. Uredite zadanu idtable1 u membership_number
  3. Kliknite na sljedeći redak za dodavanje sljedećeg polja
  4. Učinite isto za sve atribute identificirane u entitetu članova.

Vaš prozor svojstava sada bi trebao izgledati ovako.

Definiranje odnosa među entitetima

Ponovite gornje korake za sve identificirane entitete.

Vaš radni prostor dijagrama sada bi trebao izgledati kao onaj prikazan ispod.

Definiranje odnosa među entitetima

Stvorimo odnos između članova i iznajmljivanja filmova

  1. Odaberite odnos mjesta koristeći i postojeće stupce
  2. Kliknite na membership_number u tablici Članovi
  3. Kliknite na reference_number u tablici MovieRentals

Definiranje odnosa među entitetima

Ponovite gornje korake za druge odnose. Vaš ER dijagram sada bi trebao izgledati ovako –

Rezime

  • Potpuni oblik ER-a su dijagrami entiteta i odnosa. Oni igraju vrlo važnu ulogu u projektiranje baze podataka postupak. Oni služe kao netehnički komunikacijski alat za tehničke i netehničke ljude.
  • Entiteti predstavljaju stvari stvarnog svijeta; mogu biti konceptualni kao prodajni nalog ili fizički kao što je kupac.
  • Svi entiteti moraju dobiti jedinstvena imena.
  • ER modeli također omogućuju dizajnerima baza podataka da identificiraju i definiraju odnose koji postoje među entitetima.

Cijeli model ER priložen je u nastavku. Možete ga jednostavno uvesti MySQL Radna tezga

Kliknite ovdje za preuzimanje ER modela