Hva er ER-modellering? Lær med eksempel

Innholdsfortegnelse:

Anonim

Hva er ER-modellering?

Entity Relationship Model (ER Modelling) er en grafisk tilnærming til databasedesign. Det er en datamodell på høyt nivå som definerer dataelementer og deres forhold for et spesifisert programvaresystem. En ER-modell brukes til å representere objekter fra den virkelige verden.

En enhet er en ting eller et objekt i den virkelige verden som skiller seg fra omgivelsene. For eksempel er hver ansatt i en organisasjon en egen enhet. Følgende er noen av hovedegenskapene til enheter.

  • En enhet har et sett med egenskaper.
  • Enhetsegenskaper kan ha verdier.

I denne veiledningen vil du lære-

  • Enhanced Entity Relationship (EER) -modell
  • Hvorfor bruke ER-modellen?
  • Enheter i "MyFlix" -biblioteket
  • Definere forholdet mellom enheter

La oss se på vårt første eksempel igjen. En ansatt i en organisasjon er en enhet. Hvis "Peter" er programmerer ( ansatt ) hos Microsoft, kan han ha attributter ( egenskaper) som navn, alder, vekt, høyde osv. Det er åpenbart at de har verdier som er relevante for ham.

Hvert attributt kan ha verdier . I de fleste tilfeller har enkeltattributt en verdi. Men det er mulig også for attributter som har flere verdier . For eksempel har Peters alder en enkelt verdi. Men hans "telefonnummer" -egenskap kan ha flere verdier.

Enheter kan ha forhold til hverandre. La oss vurdere det enkleste eksemplet. Anta at hver Microsoft-programmerer får en datamaskin. Det er klart at Peters datamaskin også er en enhet. Peter bruker den datamaskinen, og den samme datamaskinen bruker Peter. Det er med andre ord et gjensidig forhold mellom Peter og datamaskinen hans.

I Entity Relationship Modeling modellerer vi enheter, deres attributter og relasjoner mellom enheter.

Enhanced Entity Relationship (EER) -modell

Enhanced Entity Relationship (EER) Model er en datamodell på høyt nivå som gir utvidelser til den opprinnelige Entity Relationship (ER) modellen. EER-modeller støtter design av flere detaljer. EER Modellering dukket opp som en løsning for modellering av svært komplekse databaser.

EER bruker UML-notasjon. UML er forkortelsen for Unified Modeling Language; det er et generell modelleringsspråk som brukes når man designer objektorienterte systemer. Enheter er representert som klassediagrammer. Relasjoner er representert som assosiasjoner mellom enheter. Diagrammet vist nedenfor illustrerer et ER-diagram ved bruk av UML-notasjonen.

Hvorfor bruke ER-modellen?

Nå tenker du kanskje hvorfor bruke ER-modellering når vi ganske enkelt kan opprette databasen og alle dens objekter uten ER-modellering? En av utfordringene når man designer en database er det faktum at designere, utviklere og sluttbrukere har en tendens til å se data og bruken av dem annerledes. Hvis denne situasjonen ikke blir merket av, kan vi ende opp med å produsere et databasesystem som ikke oppfyller brukernes krav.

Kommunikasjonsverktøy forstått av alle interessenter (tekniske så vel som ikke-tekniske brukere) er avgjørende for å produsere databasesystemer som oppfyller kravene til brukerne. ER-modeller er eksempler på slike verktøy.

ER-diagrammer øker også brukerproduktiviteten ettersom de lett kan oversettes til relasjonstabeller.

Casestudie: ER-diagram for "MyFlix" videobibliotek

La oss nå jobbe med MyFlix Video Library-databasesystemet for å forstå begrepet ER-diagrammer. Vi vil bruke denne databasen for all hånd-på resten av denne opplæringen

MyFlix er en forretningsenhet som leier ut filmer til medlemmene. MyFlix har lagret postene manuelt. Ledelsen ønsker nå å flytte til et DBMS

La oss se på trinnene for å utvikle EER-diagram for denne databasen-

  1. Identifiser enhetene og bestem forholdet som eksisterer mellom dem.
  2. Hver enhet, attributt og forhold skal ha passende navn som lett kan forstås av ikke-tekniske mennesker også.
  3. Forhold skal ikke kobles direkte til hverandre. Relasjoner skal koble enheter sammen.
  4. Hvert attributt i en gitt enhet skal ha et unikt navn.

Enheter i "MyFlix" -biblioteket

Enhetene som skal inkluderes i ER-diagrammet vårt er;

  • Medlemmer - denne enheten vil ha medlemsinformasjon.
  • Filmer - denne enheten vil ha informasjon om filmer
  • Kategorier - denne enheten vil ha informasjon som plasserer filmer i forskjellige kategorier som "Drama", "Action" og "Epic" osv.
  • Filmutleie - denne enheten vil ha informasjon om filmer leid ut til medlemmer.
  • Betalinger - denne enheten vil ha informasjon om medlemmets betalinger.

Definere forholdet mellom enheter

Medlemmer og filmer

Følgende gjelder når det gjelder samspillet mellom de to enhetene.

  • Et medlem kan leie mer enn én film i en gitt periode.
  • En film kan leies av mer enn ett medlem i en gitt periode.

Fra scenariet ovenfor kan vi se at forholdet til mange er mange. Relasjonsdatabaser støtter ikke mange til mange forhold. Vi må introdusere en kryssingsenhet . Dette er rollen som MovieRentals-enheten spiller. Den har et en-til-mange forhold til medlemstabellen og et annet en-til-mange forhold til filmtabellen.

Filmer og kategorier enheter

Det følgende gjelder filmer og kategorier.

  • En film kan bare tilhøre én kategori, men en kategori kan ha mer enn én film.

Vi kan trekke ut fra dette at arten av forholdet mellom kategorier og filmtabell er en-til-mange.

Medlemmer og betalingsenheter

Det følgende gjelder medlemmer og betalinger

  • Et medlem kan bare ha en konto, men kan foreta et antall innbetalinger.

Vi kan trekke ut fra dette at arten av forholdet mellom medlemmer og betalingsenheter er en-til-mange.

Nå kan vi opprette EER-modell ved hjelp av MySQL Workbench

I MySQL-arbeidsbenken, klikk - "+" -knappen

Dobbeltklikk på knappen Legg til diagram for å åpne arbeidsområdet for ER-diagrammer.

Følgende vindu vises

La oss se på de to objektene vi skal jobbe med.

  • Tabellobjektet lar oss opprette enheter og definere attributtene som er knyttet til den bestemte enheten.
  • Stedforholdsknappen lar oss definere forhold mellom enheter.

De medlemmenes enheten vil ha følgende attributter

  • Medlemsnummer
  • Fullt navn
  • Kjønn
  • Fødselsdato
  • Fysisk adresse
  • postadresse

La oss nå lage medlemstabellen

1.Trekk bordobjektet fra verktøypanelet

2. Slipp den i arbeidsområdet. En enhet som heter tabell 1 vises

3. dobbeltklikk på den. Egenskapsvinduet vist nedenfor vises

Neste,

  1. Endre tabell 1 til Medlemmer
  2. Rediger standard idtabel1 til medlemsnummer
  3. Klikk på neste linje for å legge til neste felt
  4. Gjør det samme for alle attributtene som er identifisert i medlemmets enhet.

Eiendomsvinduet ditt skal nå se slik ut.

Gjenta trinnene ovenfor for alle de identifiserte enhetene.

Diagrammets arbeidsområde skal nå se ut som det som er vist nedenfor.

Lar skape forhold mellom medlemmer og filmutleie

  1. Velg stedsforholdet ved å bruke eksisterende kolonner også
  2. Klikk på medlemsnummer i medlemstabellen
  3. Klikk på referansenummer i MovieRentals-tabellen

Gjenta trinnene ovenfor for andre forhold. ER-diagrammet ditt skal nå se slik ut -

Sammendrag

  • Den fulle formen for ER er Entity and Relationships Diagrams. De spiller en veldig viktig rolle i databasedesignprosessen. De fungerer som et ikke-teknisk kommunikasjonsverktøy for tekniske og ikke-tekniske mennesker.
  • Enheter representerer virkelige ting; de kan være konseptuelle som en salgsordre eller fysisk som en kunde.
  • Alle enheter må få unike navn.
  • ER-modeller lar også databasedesignerne identifisere og definere forholdet som eksisterer mellom enheter.

Hele ER-modellen er vedlagt nedenfor. Du kan bare importere den i MySQL Workbench

Klikk her for å laste ned ER-modell