Mikä on ER-mallinnus?
Entity Relationship Model (ER Modeling) on graafinen lähestymistapa tietokannan suunnitteluun. Se on korkean tason tietomalli, joka määrittelee tietoelementit ja niiden suhteen tietylle ohjelmistojärjestelmälle. ER-mallia käytetään edustamaan reaalimaailman esineitä.
Entity on asia tai esine reaalimaailmassa että erottuu ympäristöstä. Esimerkiksi jokainen organisaation työntekijä on erillinen yksikkö. Seuraavassa on joitain yhteisöiden pääominaisuuksia.
- Yhteisöllä on joukko ominaisuuksia.
- Entiteetin ominaisuuksilla voi olla arvoja.
Tässä opetusohjelmassa opit-
- Enhanced Entity Relationship (EER) -malli
- Miksi käyttää ER-mallia?
- MyFlix-kirjastossa olevat kohteet
- Entiteettien välisten suhteiden määritteleminen
Tarkastellaan taas ensimmäistä esimerkkiämme. Organisaation työntekijä on kokonaisuus. Jos "Peter" on ohjelmoija ( työntekijä ) Microsoftissa, hänellä voi olla ominaisuuksia ( ominaisuuksia), kuten nimi, ikä, paino, pituus jne. On selvää, että niillä on hänelle merkityksellisiä arvoja.
Jokaisella määritteellä voi olla arvoja . Useimmissa tapauksissa yhdellä attribuutilla on yksi arvo. Mutta on mahdollista, että attribuuteilla on myös useita arvoja . Esimerkiksi Pietarin iällä on yksi arvo. Mutta hänen "puhelinnumerot" -omaisuudellaan voi olla useita arvoja.
Entiteeteillä voi olla suhteita toisiinsa. Tarkastellaan yksinkertaisinta esimerkkiä. Oletetaan, että jokaiselle Microsoft-ohjelmoijalle annetaan tietokone. On selvää, että Pietarin tietokone on myös kokonaisuus. Peter käyttää kyseistä tietokonetta, ja Peter käyttää samaa tietokonetta. Toisin sanoen Pietarin ja hänen tietokoneen välillä on keskinäinen suhde.
Vuonna Entity Relationship Modeling, mallinnetaan yhteisöt, niiden ominaisuuksia ja suhteita yksiköiden joukossa.
Enhanced Entity Relationship (EER) -malli
Enhanced Entity Relationship (EER) -malli on korkean tason tietomalli, joka tarjoaa laajennuksia alkuperäiselle Entity Relationship (ER) -mallille. EER-mallit tukevat yksityiskohtien suunnittelua. EER-mallinnus tuli esiin ratkaisuna erittäin monimutkaisten tietokantojen mallintamiseen.
EER käyttää UML-merkintää. UML on lyhenne sanoista Unified Modeling Language; se on yleiskäyttöinen mallinnuskieli, jota käytetään suunniteltaessa olio-järjestelmiä. Entiteetit on esitetty luokkakaavioina. Suhteet ovat edustettuina yhteisöjen välisinä assosiaatioina. Alla oleva kaavio kuvaa ER-kaaviota käyttäen UML-merkintää.
Miksi käyttää ER-mallia?
Nyt saatat ajatella, miksi käyttää ER-mallintamista, kun voimme yksinkertaisesti luoda tietokannan ja kaikki sen objektit ilman ER-mallinnusta? Yksi haasteista tietokannan suunnittelussa on se, että suunnittelijat, kehittäjät ja loppukäyttäjät katsovat dataa ja sen käyttöä eri tavalla. Jos tätä tilannetta ei tarkasteta, voimme päätyä tuottamaan tietokantajärjestelmän, joka ei täytä käyttäjien vaatimuksia.
Kaikkien sidosryhmien (sekä teknisten että ei-teknisten käyttäjien) ymmärtämät viestintävälineet ovat kriittisiä tuotettaessa tietokantajärjestelmiä, jotka täyttävät käyttäjien vaatimukset. ER-mallit ovat esimerkkejä tällaisista työkaluista.
ER-kaaviot lisäävät myös käyttäjien tuottavuutta, koska ne voidaan helposti muuntaa relaatiotaulukoiksi.
Tapaustutkimus: "MyFlix" -videokirjaston ER-kaavio
Työskentelemme nyt MyFlix Video Library -tietokantajärjestelmän kanssa auttaaksemme ymmärtämään ER-kaavioiden käsitettä. Käytämme tätä tietokantaa kaikkeen tämän opetusohjelman loppuosaan
MyFlix on liikeyritys, joka vuokraa elokuvia jäsenilleen. MyFlix on tallentanut tietueensa manuaalisesti. Johto haluaa nyt siirtyä DBMS: ään
Katsotaanpa vaiheet EER-kaavion kehittämiseksi tälle tietokannalle-
- Tunnista entiteetit ja määritä niiden välillä olevat suhteet.
- Jokaisella entiteetillä, attribuutilla ja suhteella tulisi olla sopivat nimet, jotka myös muut kuin tekniset ihmiset ymmärtävät helposti.
- Ihmissuhteita ei pitäisi yhdistää suoraan toisiinsa. Suhteiden tulisi yhdistää entiteetit.
- Jokaisella tietyn entiteetin attribuutilla tulisi olla oma nimi.
MyFlix-kirjastossa olevat kohteet
ER-kaavioon sisällytettävät entiteetit ovat;
- Jäsenet - tämä yhteisö pitää hallussaan jäsentietoja.
- Elokuvat - tämä yhteisö tallentaa tietoja elokuvista
- Luokat - tämä kokonaisuus sisältää tietoja, jotka sijoittavat elokuvia eri luokkiin, kuten "Draama", "Toiminta" ja "Eeppinen" jne.
- Elokuvavuokraus - tämä yhteisö pitää sisällään tietoja jäsenille vuokrattuista elokuvista.
- Maksut - tämä yhteisö pitää hallussaan tietoja jäsenten suorittamista maksuista.
Entiteettien välisten suhteiden määritteleminen
Jäsenet ja elokuvat
Seuraava pätee kahden yksikön väliseen vuorovaikutukseen.
- Jäsen voi vuokrata useamman kuin yhden elokuvan tiettynä aikana.
- Elokuvaa voi vuokrata useampi kuin yksi jäsen tiettynä ajanjaksona.
Edellä olevasta skenaariosta voimme nähdä, että suhteen luonne on monista moniin. Relaatiotietokannat eivät tue monen ja monen välisiä suhteita. Meidän on otettava käyttöön liitosyksikkö . Tämä on MovieRentals-yksikön rooli. Sillä on yksi moniin-suhde jäsentätaulukkoon ja toinen yksi-moniin -suhde elokuvataulukkoon.
Elokuvat ja ryhmät
Seuraava pätee elokuviin ja luokkiin.
- Elokuva voi kuulua vain yhteen luokkaan, mutta luokassa voi olla useampi kuin yksi elokuva.
Tästä voimme päätellä, että luokkien ja elokuvataulukon välinen suhde on yksi moniin.
Jäsenet ja maksuyksiköt
Seuraava pätee jäseniin ja maksuihin
- Jäsenellä voi olla vain yksi tili, mutta hän voi suorittaa useita maksuja.
Tästä voimme päätellä, että jäsenten ja maksuyksiköiden välinen suhde on yksi moniin.
Nyt voit luoda EER-mallin käyttämällä MySQL Workbenchiä
Napsauta MySQL-työpöydällä - "+" -painiketta
Kaksoisnapsauta Lisää kaavio -painiketta avataksesi työtilan ER-kaavioille.
Seuraava ikkuna tulee näkyviin
Katsotaanpa kahta kohdetta, joiden kanssa työskentelemme.
Taulukko-objektin avulla voimme luoda entiteettejä ja määritellä tiettyyn entiteettiin liittyvät attribuutit.
Paikkasuhde-painikkeen avulla voimme määrittää suhteet entiteettien välillä.
Jäsenten yrityksellä on seuraavat ominaisuudet
- Jäsennumero
- Täydelliset nimet
- Sukupuoli
- Syntymäaika
- Fyysinen osoite
- postiosoite
Luodaan nyt jäsentaulukko
1. Vedä taulukko-objekti työkalupaneelista
2. pudota se työtilan alueelle. Taulukko 1 -niminen yksikkö tulee näkyviin
3.Kaksoisnapsauta sitä. Näyttöön tulee alla oleva ominaisuusikkuna
Seuraava ,
- Vaihda taulukko 1 jäseniksi
- Muokkaa oletusarvoa idtable1 jäsenyyden numeroksi
- Napsauta seuraavaa riviä lisätäksesi seuraavan kentän
- Tee sama kaikille jäsenten entiteetissä määritetyille määritteille.
Ominaisuusikkunasi pitäisi nyt näyttää tältä.
Toista yllä olevat vaiheet kaikille tunnistetuille entiteeteille.
Kaavion työtilan pitäisi nyt näyttää alla olevalta.
Antaa luoda suhteen jäsenten ja elokuvavuokraamojen välille
- Valitse paikkasuhde myös olemassa olevien sarakkeiden avulla
- Napsauta Jäsenet-taulukossa jäsenyyden numero
- Napsauta MovieRentals-taulukon viitenumeroa
Toista yllä olevat vaiheet muille suhteille. ER-kaavion pitäisi nyt näyttää tältä -
Yhteenveto
- Täysi ER-muoto on Entity and Relationships Diagrams. Heillä on erittäin tärkeä rooli tietokannan suunnitteluprosessissa. Ne toimivat ei-teknisenä viestintävälineenä teknisille ja ei-teknisille ihmisille.
- Entiteetit edustavat tosielämän asioita; ne voivat olla käsitteellisiä myyntitilauksina tai fyysisiä kuten asiakas.
- Kaikille olioille on annettava yksilölliset nimet.
- ER-mallit antavat myös tietokannan suunnittelijoille mahdollisuuden tunnistaa ja määritellä yksiköiden väliset suhteet.
Koko ER-malli on liitteenä alla. Voit yksinkertaisesti tuoda sen MySQL Workbenchiin
Napsauta tätä ladataksesi ER-mallin