Što je ER modeliranje? Učite s primjerom
⚡ Pametni sažetak
Modeliranje entiteta i odnosa je grafički pristup dizajnu baza podataka koji predstavlja objekte iz stvarnog svijeta kao entitete, opisuje ih atributima i bilježi kako se povezuju putem odnosa, stvarajući jasan nacrt prije nego što se izgrade bilo kakve tablice.
Š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.
Entitet je stvar ili objekt u stvarnom svijetu koji se razlikuje od svoje okolne okoline. Na primjer, svaki zaposlenik organizacije je zaseban entitet. U nastavku su navedene 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 „Petar“ programer (zaposlenik) u Microsoft, on može imati atribute (svojstva) poput imena, dobi, težine, visine itd. Očito je da oni sadrže vrijednosti koje su mu relevantne.
Svaki atribut može imati vrijednosti. U većini slučajeva jedan atribut ima jednu vrijednost. Ali moguće je da atributi imaju i više vrijednosti. Na primjer, Petrova dob ima jednu vrijednost. Ali njegovo svojstvo "brojevi telefona" može imati više vrijednosti.
Entiteti mogu imati međusobne odnose. Razmotrimo najjednostavniji primjer. Pretpostavimo da svaki Microsoft Programeru se daje računalo. Jasno je da je Petrovo računalo također entitet. Petar koristi to računalo, a isto računalo koristi i Petar. Drugim riječima, postoji međusobni odnos između Petra i njegovog računala.
U modeliranju entiteta i odnosa modeliramo entitete, njihove atribute i odnose među entitetima.
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 za izradu sustava baza podataka koji zadovoljavaju zahtjeve korisnika. ER modeli su primjeri takvih alata.
ER dijagrami također povećavaju produktivnost korisnika jer se mogu lako prevesti u relacijske tablice.
Model poboljšanog odnosa entiteta (EER).
Model poboljšanih entitetskih odnosa (EER) je model podataka visoke razine koji pruža proširenja izvornom modelu entitetskih odnosa (ER). EER modeli podržavaju detaljniji dizajn. EER modeliranje pojavilo 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.
Studija slučaja: ER dijagram za videoteku „MyFlix“
Sada ćemo raditi sa sustavom baze podataka MyFlix Video Library kako bismo razumjeli koncept ER dijagrama. Ovu bazu podataka koristit ćemo za sav praktični rad u ovom vodiču.
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:
- Identificirajte entitete i odredite odnose koji među njima postoje.
- Svaki entitet, atribut i odnos trebaju imati odgovarajuća imena koja mogu lako razumjeti i osobe koje nisu tehničke prirode.
- Odnosi ne bi trebali biti izravno povezani jedni s drugima. Odnosi bi trebali povezivati entitete.
- 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 je:
- Članovi – ovaj entitet će sadržavati podatke o članovima.
- Filmovi – ovaj entitet će sadržavati informacije o filmovima.
- Kategorije – ovaj entitet sadrži informacije koje filmove svrstavaju u različite kategorije kao što su „Drama“, „Akcija“ i „Epski“ itd.
- Najam filmova – ovaj entitet će sadržavati informacije o filmovima iznajmljenim članovima.
- Plaćanja – ovaj entitet će sadržavati informacije o plaćanjima č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 entitet spoja. To je uloga koju igra entitet MovieRentals. Ima odnos jedan-prema-više s tablicom Members i još jedan odnos jedan-prema-više s tablicom Movies.
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 tablica filmova jedan-prema-više.
Članovi i subjekti platnog prometa
Sljedeće vrijedi za članove i plaćanja.
- Č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 platnih subjekata jedan-prema-mnogo.
Izradite EER model koristeći MySQL Radna tezga
In MySQL Radna tezga, kliknite gumb „+“.
Double Kliknite gumb Dodaj dijagram da biste otvorili radni prostor za ER dijagrame.
Pojavljuje se sljedeći prozor.
Pogledajmo dva objekta s kojima ćemo raditi.
- Objekt tablice
omogućuje nam stvaranje entiteta i definiranje atributa povezanih s određenim entitetom.
- Odnos mjesta
Gumb nam omogućuje definiranje odnosa između entiteta.
Entitet Članovi imat će sljedeće atribute
- Članski broj
- Puna imena
- rod
- Datum rođenja
- Fizička adresa
- poštanska adresa
Sada kreirajmo tablicu Članovi
1. Povucite objekt tablice s ploče alata.
2. Ispustite ga u radni prostor. Pojavit će se entitet pod nazivom tablica 1.
3. Double kliknite na njega. Pojavit će se prozor svojstava prikazan dolje.
Dalje,
- Promijeni tablicu 1 u Članove.
- Uredite zadanu vrijednost idtable1 na membership_number.
- Kliknite na sljedeći redak da biste dodali sljedeće polje.
- Učinite isto za sve atribute identificirane u entitetu Članovi.
Vaš prozor svojstava sada bi trebao izgledati ovako.
Ponovite gornje korake za sve identificirane entitete.
Vaš radni prostor dijagrama sada bi trebao izgledati kao onaj prikazan ispod.
Stvorimo odnos između članova i iznajmljenih filmova
- Odaberite odnos mjesta pomoću alata za postojeće stupce.
- Kliknite na broj_članstva u tablici Članovi.
- Kliknite na reference_number u tablici MovieRentals.
Ponovite gore navedene korake za ostale odnose. Vaš ER dijagram sada bi trebao izgledati ovako –










