Hvad er ER-modellering? Lær med eksempel

Indholdsfortegnelse:

Anonim

Hvad er ER-modellering?

Entity Relationship Model (ER Modelling) er en grafisk tilgang til databasedesign. Det er en datamodel på højt niveau, der definerer dataelementer og deres forhold til et specificeret softwaresystem. En ER-model bruges til at repræsentere objekter i den virkelige verden.

En enhed er en ting eller et objekt i den virkelige verden, der kan skelnes fra det omgivende miljø. For eksempel er hver medarbejder i en organisation en separat enhed. Følgende er nogle af de vigtigste egenskaber ved enheder.

  • En enhed har et sæt egenskaber.
  • Enhedsegenskaber kan have værdier.

I denne vejledning lærer du-

  • Forbedret enhedsforhold (EER) -model
  • Hvorfor bruge ER Model?
  • Enheder i "MyFlix" -biblioteket
  • Definition af forholdet mellem enheder

Lad os overveje vores første eksempel igen. En medarbejder i en organisation er en enhed. Hvis "Peter" er en programmør (en medarbejder ) hos Microsoft, kan han have attributter ( egenskaber) som navn, alder, vægt, højde osv. Det er indlysende, at de har værdier, der er relevante for ham.

Hver attribut kan have værdier . I de fleste tilfælde har en enkelt attribut én værdi. Men det er muligt, at attributter også har flere værdier . For eksempel har Peters alder en enkelt værdi. Men hans "telefonnumre" egenskab kan have flere værdier.

Enheder kan have forhold til hinanden. Lad os overveje det enkleste eksempel. Antag, at hver Microsoft-programmør får en computer. Det er klart, at Peters computer også er en enhed. Peter bruger den computer, og den samme computer bruges af Peter. Med andre ord er der et gensidigt forhold mellem Peter og hans computer.

I modellering af enhedsrelationer modellerer vi enheder, deres attributter og forhold mellem enheder.

Forbedret enhedsforhold (EER) -model

Enerated Entity Relationship (EER) Model er en datamodel på højt niveau, der giver udvidelser til den originale Entity Relationship (ER) model. EER-modeller understøtter design af flere detaljer. EER Modellering opstod som en løsning til modellering af meget komplekse databaser.

EER bruger UML-notation. UML er forkortelsen for Unified Modeling Language; det er et generelt modelleringssprog, der bruges til design af objektorienterede systemer. Enheder er repræsenteret som klassediagrammer. Relationer er repræsenteret som associering mellem enheder. Diagrammet vist nedenfor illustrerer et ER-diagram ved hjælp af UML-notationen.

Hvorfor bruge ER Model?

Nu kan du måske tænke over, hvorfor bruge ER-modellering, når vi simpelthen kan oprette databasen og alle dens objekter uden ER-modellering? En af udfordringerne ved design af en database er det faktum, at designere, udviklere og slutbrugere har tendens til at se data og dets anvendelse forskelligt. Hvis denne situation ikke er markeret, kan vi ende med at producere et databasesystem, der ikke opfylder brugernes krav.

Kommunikationsværktøjer, der forstås af alle interessenter (tekniske såvel som ikke-tekniske brugere), er kritiske til at producere databasesystemer, der opfylder brugernes krav. ER-modeller er eksempler på sådanne værktøjer.

ER-diagrammer øger også brugerens produktivitet, da de let kan oversættes til relationelle tabeller.

Casestudie: ER-diagram for "MyFlix" videobibliotek

Lad os nu arbejde med MyFlix Video Library-databasesystemet for at hjælpe med at forstå begrebet ER-diagrammer. Vi bruger denne database til alt hånd-i resten af ​​denne tutorial

MyFlix er en forretningsenhed, der udlejer film til sine medlemmer. MyFlix har gemt sine poster manuelt. Ledelsen vil nu flytte til en DBMS

Lad os se på trinnene til at udvikle EER-diagram til denne database-

  1. Identificer enhederne og bestem de forhold, der findes mellem dem.
  2. Hver enhed, attribut og forhold skal have passende navne, der også let kan forstås af de ikke-tekniske mennesker.
  3. Forhold skal ikke forbindes direkte til hinanden. Forhold skal forbinde enheder.
  4. Hver attribut i en given enhed skal have et unikt navn.

Enheder i "MyFlix" -biblioteket

Enhederne, der skal medtages i vores ER-diagram, er;

  • Medlemmer - denne enhed har medlemsoplysninger.
  • Film - denne enhed har oplysninger om film
  • Kategorier - denne enhed vil indeholde oplysninger, der placerer film i forskellige kategorier såsom "Drama", "Action" og "Epic" osv.
  • Filmudlejning - denne enhed vil indeholde oplysninger om film, der udlejes til medlemmer.
  • Betalinger - denne enhed opbevarer oplysninger om medlemmernes betalinger.

Definition af forholdet mellem enheder

Medlemmer og film

Det følgende gælder for interaktionerne mellem de to enheder.

  • Et medlem kan leje mere end en film i en given periode.
  • En film kan lejes af mere end et medlem i en given periode.

Fra ovenstående scenarie kan vi se, at forholdet er mange-til-mange. Relationsdatabaser understøtter ikke mange-til-mange relationer. Vi er nødt til at introducere en krydsningsenhed . Dette er den rolle, som MovieRentals-enheden spiller. Det har et en-til-mange forhold til medlemsbordet og et andet en-til-mange forhold til filmtabellen.

Film og kategorier enheder

Det følgende gælder for film og kategorier.

  • En film kan kun høre til en kategori, men en kategori kan have mere end en film.

Vi kan udlede heraf, at arten af ​​forholdet mellem kategorier og filmtabellen er en-til-mange.

Medlemmer og betalingsenheder

Følgende gælder for medlemmer og betalinger

  • Et medlem kan kun have en konto, men kan foretage et antal betalinger.

Vi kan udlede ud fra dette, at forholdet mellem medlemmer og betalingsenheder er en-til-mange.

Lad os nu oprette EER-model ved hjælp af MySQL Workbench

Klik på - "+" i MySQL-arbejdsbænken

Dobbeltklik på knappen Tilføj diagram for at åbne arbejdsområdet for ER-diagrammer.

Følgende vindue vises

Lad os se på de to objekter, som vi vil arbejde med.

  • Tabelobjektet giver os mulighed for at oprette enheder og definere de attributter, der er knyttet til den bestemte enhed.
  • Knappen Stedforhold giver os mulighed for at definere forhold mellem enheder.

De medlemmernes enhed vil have følgende attributter

  • Medlemsnummer
  • Fuld navne
  • Køn
  • Fødselsdato
  • Fysisk adresse
  • postadresse

Lad os nu oprette medlemstabellen

1. Træk tabelobjektet fra værktøjspanelet

2. Drop det i arbejdsområdet. En enhed med navnet tabel 1 vises

3. dobbeltklik på det. Egenskabsvinduet vist nedenfor vises

Næste ,

  1. Skift tabel 1 til medlemmer
  2. Rediger standard idtabel1 til membership_number
  3. Klik på den næste linje for at tilføje det næste felt
  4. Gør det samme for alle attributter, der er identificeret i medlemmernes enhed.

Dit egenskabsvindue skal nu se sådan ud.

Gentag ovenstående trin for alle de identificerede enheder.

Dit diagramarbejdsområde skal nu se ud som det, der er vist nedenfor.

Lad os skabe forhold mellem medlemmer og filmudlejning

  1. Vælg også stedforholdet ved hjælp af eksisterende kolonner
  2. Klik på medlemsnummer i medlemstabellen
  3. Klik på reference_nummer i MovieRentals-tabellen

Gentag ovenstående trin for andre forhold. Dit ER-diagram skal nu se sådan ud -

Resumé

  • Den fulde form for ER er diagrammer over enhed og forhold. De spiller en meget vigtig rolle i databasens designproces. De fungerer som et ikke-teknisk kommunikationsværktøj for tekniske og ikke-tekniske personer.
  • Enheder repræsenterer ting i den virkelige verden; de kan være konceptuelle som en salgsordre eller fysisk såsom en kunde.
  • Alle enheder skal have unikke navne.
  • ER-modeller tillader også databasedesignere at identificere og definere de relationer, der findes mellem enheder.

Hele ER-modellen er vedhæftet nedenfor. Du kan simpelthen importere det i MySQL Workbench

Klik her for at downloade ER-model