Vad är ER-modellering?
Entity Relationship Model (ER Modelling) är ett grafiskt tillvägagångssätt för databasdesign. Det är en datamodell på hög nivå som definierar dataelement och deras relation för ett specifikt mjukvarusystem. En ER-modell används för att representera verkliga objekt.
En enhet är en sak eller ett objekt i den verkliga världen som kan särskiljas från omgivande miljö. Till exempel är varje anställd i en organisation en separat enhet. Följande är några av de viktigaste egenskaperna hos enheter.
- En enhet har en uppsättning egenskaper.
- Enhetsegenskaper kan ha värden.
I den här handledningen lär du dig-
- Enerated Entity Relationship (EER) Model
- Varför använda ER-modellen?
- Enheter i biblioteket "MyFlix"
- Definiera förhållandet mellan enheter
Låt oss överväga vårt första exempel igen. En anställd i en organisation är en enhet. Om "Peter" är en programmerare ( anställd ) hos Microsoft kan han ha attribut ( egenskaper) som namn, ålder, vikt, längd etc. Det är uppenbart att de har värden som är relevanta för honom.
Varje attribut kan ha värden . I de flesta fall har enstaka attribut ett värde. Men det är möjligt attribut har flera värden också. Till exempel har Peters ålder ett enda värde. Men hans "telefonnummer" -egenskap kan ha flera värden.
Enheter kan ha relationer med varandra. Låt oss överväga det enklaste exemplet. Antag att varje Microsoft-programmerare får en dator. Det är uppenbart att Peters dator också är en enhet. Peter använder den datorn, och samma dator används av Peter. Det finns med andra ord ett ömsesidigt förhållande mellan Peter och hans dator.
I Entity Relationship Modeling modellerar vi enheter, deras attribut och relationer mellan enheter.
Enerated Entity Relationship (EER) Model
Enhanced Entity Relationship (EER) -modell är en datamodell på hög nivå som ger tillägg till den ursprungliga Entity Relationship- modellen (ER). EER-modeller stöder mer detaljerad design. EER-modellering framkom som en lösning för modellering av mycket komplexa databaser.
EER använder UML-notering. UML är förkortningen för Unified Modeling Language; det är ett allmänt modelleringsspråk som används vid design av objektorienterade system. Enheter representeras som klassdiagram. Relationer representeras som föreningar mellan enheter. Diagrammet nedan visar ett ER-diagram med UML-notationen.
Varför använda ER-modellen?
Nu kanske du tänker varför använda ER-modellering när vi helt enkelt kan skapa databasen och alla dess objekt utan ER-modellering? En av utmaningarna när man utformar en databas är det faktum att designers, utvecklare och slutanvändare tenderar att se data och dess användning på olika sätt. Om den här situationen inte är markerad kan vi sluta producera ett databassystem som inte uppfyller användarnas krav.
Kommunikationsverktyg som förstås av alla intressenter (tekniska såväl som icke-tekniska användare) är avgörande för att producera databassystem som uppfyller användarnas krav. ER-modeller är exempel på sådana verktyg.
ER-diagram ökar också användarnas produktivitet eftersom de enkelt kan översättas till relationstabeller.
Fallstudie: ER-diagram för "MyFlix" videobibliotek
Låt oss nu arbeta med MyFlix Video Library-databassystem för att förstå begreppet ER-diagram. Vi kommer att använda denna databas för alla hand-on i resten av denna handledning
MyFlix är en affärsenhet som hyr ut filmer till sina medlemmar. MyFlix har lagrat sina poster manuellt. Ledningen vill nu flytta till en DBMS
Låt oss titta på stegen för att utveckla EER-diagram för denna databas-
- Identifiera enheterna och bestäm de relationer som finns mellan dem.
- Varje enhet, attribut och relation bör ha lämpliga namn som lätt kan förstås av icke-tekniska personer också.
- Relationer ska inte kopplas direkt till varandra. Relationer ska koppla samman enheter.
- Varje attribut i en given enhet ska ha ett unikt namn.
Enheter i biblioteket "MyFlix"
Enheterna som ska inkluderas i vårt ER-diagram är;
- Medlemmar - denna enhet kommer att ha medlemsinformation.
- Filmer - denna enhet kommer att ha information om filmer
- Kategorier - den här enheten kommer att innehålla information som placerar filmer i olika kategorier som "Drama", "Action" och "Epic" etc.
- Filmuthyrning - den här enheten kommer att hålla information om filmer som hyrs ut till medlemmar.
- Betalningar - den här enheten kommer att ha information om medlemmarnas betalningar.
Definiera förhållandet mellan enheter
Medlemmar och filmer
Följande gäller för interaktionerna mellan de två enheterna.
- En medlem kan hyra mer än en film under en viss period.
- En film kan hyras av mer än en medlem under en viss period.
Från ovanstående scenario kan vi se att förhållandets natur är många-till-många. Relationsdatabaser stöder inte många-till-många-relationer. Vi måste införa en korsningsenhet . Det här är den roll som MovieRentals-enheten spelar. Det har en en-till-många relation med medlemmar tabellen och en annan en-till-många relation med film tabell.
Filmer och kategorier enheter
Följande gäller för filmer och kategorier.
- En film kan bara tillhöra en kategori men en kategori kan ha mer än en film.
Av detta kan vi dra slutsatsen att förhållandet mellan kategorier och filmtabellen är en-till-många.
Medlemmar och betalningsenheter
Följande gäller medlemmar och betalningar
- En medlem kan bara ha ett konto men kan göra ett antal betalningar.
Vi kan härleda att relationen mellan medlemmar och betalningsenheter är en-till-många.
Låt oss nu skapa EER-modell med MySQL Workbench
Klicka på knappen "+" i MySQL-arbetsbänken
Dubbelklicka på knappen Lägg till diagram för att öppna arbetsytan för ER-diagram.
Följande fönster visas
Låt oss titta på de två objekten som vi kommer att arbeta med.
Tabellobjektet tillåter oss att skapa enheter och definiera attribut som är associerade med den specifika enheten.
Platsrelationsknappen låter oss definiera relationer mellan enheter.
De medlemmarnas enheten kommer att ha följande attribut
- Medlemsnummer
- Fullständiga namn
- Kön
- Födelsedatum
- Fysisk adress
- postadress
Låt oss nu skapa medlemstabellen
1.Dra tabellobjektet från verktygspanelen
2. Släpp den i arbetsytan. En enhet med namnet tabell 1 visas
3.Dubbelklicka på den. Egenskapsfönstret som visas nedan visas
Nästa ,
- Ändra tabell 1 till Medlemmar
- Redigera standard-idtabell1 till medlemsnummer
- Klicka på nästa rad för att lägga till nästa fält
- Gör detsamma för alla attribut som identifierats i medlemmarnas enhet.
Ditt fastighetsfönster ska nu se ut så här.
Upprepa stegen ovan för alla identifierade enheter.
Din diagramarbetsyta ska nu se ut som den som visas nedan.
Låter oss skapa relationer mellan medlemmar och filmuthyrning
- Välj platsrelationen med befintliga kolumner också
- Klicka på medlemsnummer i medlemstabellen
- Klicka på referensnummer i MovieRentals-tabellen
Upprepa ovanstående steg för andra relationer. Ditt ER-diagram ska nu se ut så här -
Sammanfattning
- Den fullständiga formen av ER är Entity and Relationships Diagrams. De spelar en mycket viktig roll i databasdesignprocessen. De fungerar som ett icke-tekniskt kommunikationsverktyg för tekniska och icke-tekniska personer.
- Enheter representerar verkliga saker; de kan vara konceptuella som en försäljningsorder eller fysiska som en kund.
- Alla enheter måste ges unika namn.
- ER-modeller tillåter också databasdesigners att identifiera och definiera de relationer som finns mellan enheter.
Hela ER-modellen bifogas nedan. Du kan helt enkelt importera den i MySQL Workbench
Klicka här för att ladda ner ER-modellen