Co to jest modelowanie ER? Ucz się na przykładzie
Co to jest modelowanie ER?
Model relacji encji (Modelowanie ER) to graficzne podejście do projektowania baz danych. Jest to model danych wysokiego poziomu, który definiuje elementy danych i ich relacje dla określonego systemu oprogramowania. Model ER służy do reprezentowania obiektów świata rzeczywistego.
An Jednostka jest rzeczą lub obiektem w świecie rzeczywistym, który można odróżnić od otaczającego środowiska. Na przykład każdy pracownik organizacji jest odrębną jednostką. Poniżej przedstawiono niektóre z głównych cech jednostek.
- Jednostka ma zestaw właściwości.
- Właściwości jednostki mogą mieć wartości.
Rozważmy jeszcze raz nasz pierwszy przykład. Pracownik organizacji jest podmiotem. Jeśli „Piotr” jest programistą (an Pracownik) w Microsoft, może mieć atrybuty (właściwości), takie jak imię i nazwisko, wiek, waga, wzrost itp. Jest oczywiste, że posiadają one istotne dla niego wartości.
Każdy atrybut może mieć Wartości. W większości przypadków pojedynczy atrybut ma jedną wartość. Ale możliwe jest, że atrybuty mają wiele wartości również. Na przykład wiek Petera ma jedną wartość. Ale jego właściwość „numery telefonów” może mieć wiele wartości.
Jednostki mogą mieć relacje ze sobą. Rozważmy najprostszy przykład. Załóżmy, że każdy Microsoft Programista otrzymuje komputer. To jasne, że Komputer Piotra jest także podmiotem. Peter używa tego komputera i tego samego komputera używa Peter. Innymi słowy, istnieje wzajemna relacja między Piotrem a jego komputerem.
In Modelowanie Relacji Podmiotowych, modelujemy byty, ich atrybuty i relacje pomiędzy bytami.
Model ulepszonej relacji między jednostkami (EER).
Model Enhanced Entity Relationship (EER) to model danych wysokiego poziomu, który zapewnia rozszerzenia oryginału Związek z podmiotami(ER). Modele EER obsługują bardziej szczegółowe projektowanie. Modelowanie EER pojawiło się jako rozwiązanie do modelowania wysoce złożonych baz danych.
EER wykorzystuje notację UML. UML to skrót od Ujednolicony język modelowania; jest to język modelowania ogólnego przeznaczenia używany przy projektowaniu systemów obiektowych. Jednostki są reprezentowane jako diagramy klas. Relacje są reprezentowane jako powiązania między jednostkami. Diagram pokazany poniżej ilustruje diagram ER przy użyciu Notacja UML.
Dlaczego warto używać modelu ER?
Teraz możesz pomyśleć, po co używać modelowania ER, skoro możemy po prostu stworzyć bazę danych i wszystkie jego obiekty bez modelowania ER? Jednym z wyzwań stojących przed projektowaniem bazy danych jest fakt, że projektanci, programiści i użytkownicy końcowi mają tendencję do odmiennego postrzegania danych i ich wykorzystania. Jeśli nie zaradzimy tej sytuacji, możemy stworzyć system baz danych, który nie będzie spełniał wymagań użytkowników.
Narzędzia komunikacji zrozumiałe dla wszystkich interesariuszy (użytkowników technicznych i nietechnicznych) mają kluczowe znaczenie w tworzeniu systemów baz danych spełniających wymagania użytkowników. Modele ER są przykładami takich narzędzi.
Diagramy ER zwiększają również produktywność użytkowników, ponieważ można je łatwo przełożyć na tabele relacyjne.
Studium przypadku: diagram ER dla biblioteki wideo „MyFlix”.
Popracujmy teraz z systemem baz danych MyFlix Video Library, aby pomóc zrozumieć koncepcję diagramów ER. Będziemy używać tej bazy danych do wszystkich ćwiczeń praktycznych w pozostałej części tego samouczka
MyFlix to podmiot gospodarczy wypożyczający filmy swoim członkom. MyFlix przechowuje swoje dane ręcznie. Zarząd chce teraz przenieść się do DBMS
Przyjrzyjmy się krokom tworzenia diagramu EER dla tej bazy danych-
- Zidentyfikuj podmioty i określ relacje, jakie istnieją między nimi.
- Każdy byt, atrybut i relacja powinny mieć odpowiednie nazwy, które będą łatwo zrozumiałe także dla osób nietechnicznych.
- Relacje nie powinny być ze sobą bezpośrednio powiązane. Relacje powinny łączyć podmioty.
- Każdy atrybut w danej encji powinien mieć unikalną nazwę.
Podmioty w bibliotece „MyFlix”.
Podmioty, które mają zostać uwzględnione w naszym Schemat ER są;
- Członkowie – podmiot ten będzie przechowywać informacje o członkach.
- Filmy – podmiot ten będzie posiadał informacje dotyczące filmów
- Kategorie – ta jednostka będzie przechowywać informacje, które umieszczają filmy w różnych kategoriach, takich jak „Dramat”, „Akcja” i „Epic” itp.
- Wypożyczalnie filmów – w tym podmiocie będą przechowywane informacje o filmach wypożyczanych członkom.
- Płatności – podmiot ten będzie przechowywał informacje o wpłatach dokonywanych przez członków.
Definiowanie relacji między bytami
Członkowie i filmy
Poniższe stwierdzenie odnosi się do interakcji pomiędzy tymi dwoma podmiotami.
- Członek może wypożyczyć więcej niż jeden film w danym okresie.
- Film może wypożyczyć więcej niż jeden członek w danym okresie.
Z powyższego scenariusza widzimy, że relacja ma charakter wiele do wielu. Relacyjne bazy danych nie obsługują relacji wiele do wielu. Musimy wprowadzić element łączący. Tę rolę pełni jednostka MovieRentals. Ma relację jeden do wielu z tabelą członków i inną relację jeden do wielu z tabelą filmów.
Elementy filmów i kategorii
Poniższa zasada dotyczy filmów i kategorii.
- Film może należeć tylko do jednej kategorii, ale kategoria może obejmować więcej niż jeden film.
Możemy z tego wywnioskować, że natura relacji między kategoriami a tabelą filmów jest typu jeden do wielu.
Członkowie i podmioty płatnicze
Poniższe informacje dotyczą członków i płatności
- Członek może posiadać tylko jedno konto, ale może dokonywać wielu płatności.
Możemy z tego wywnioskować, że charakter relacji między członkami a podmiotami płatniczymi ma charakter jeden do wielu.
Teraz utwórzmy model EER za pomocą MySQL Workbench
W MySQL stół warsztatowy, kliknij przycisk „+”.
Double kliknij przycisk Dodaj diagram, aby otworzyć obszar roboczy dla diagramów ER.
Pojawia się następujące okno
Przyjrzyjmy się dwóm obiektom, z którymi będziemy pracować.
Obiekt tabeli pozwala na tworzenie encji oraz definiowanie atrybutów związanych z konkretną encją.
Przycisk relacji miejsca pozwala na zdefiniowanie relacji pomiędzy podmiotami.
członkowie jednostka będzie miała następujące atrybuty
- Numer członkowski
- Pełne nazwy
- Płeć
- Data urodzenia
- Adres fizyczny
- adres pocztowy
Utwórzmy teraz tabelę członków
1. Przeciągnij obiekt tabeli z panelu narzędzi
2.Upuść go w obszarze roboczym. Pojawi się jednostka o nazwie tabela 1
3.Double Kliknij na to. Pojawi się okno właściwości pokazane poniżej
Następny ,
- Zmień tabelę 1 na Członkowie
- Edytuj domyślną tabelę idtable1 na numer_ członkostwa
- Kliknij następną linię, aby dodać kolejne pole
- Zrób to samo dla wszystkich atrybutów zidentyfikowanych w encji członków.
Twoje okno właściwości powinno teraz wyglądać tak.
Powtórz powyższe kroki dla wszystkich zidentyfikowanych podmiotów.
Obszar roboczy diagramu powinien teraz wyglądać jak ten pokazany poniżej.
Stwórzmy relację między członkami a wypożyczalnią filmów
- Wybierz relację między miejscami, korzystając także z istniejących kolumn
- Kliknij numer członkostwa w tabeli Członkowie
- Kliknij numer referencyjny w tabeli MovieRentals
Powtórz powyższe kroki dla innych relacji. Twój diagram ER powinien teraz wyglądać tak –
Podsumowanie
- Pełną formą ER są diagramy encji i relacji. Odgrywają bardzo ważną rolę w projektowanie baz danych proces. Służą jako nietechniczne narzędzie komunikacji dla osób technicznych i nietechnicznych.
- Byty reprezentują rzeczy ze świata rzeczywistego; mogą mieć charakter koncepcyjny (np. zamówienie sprzedaży) lub fizyczny (np. klient).
- Wszystkim podmiotom należy nadać unikalne nazwy.
- Modele ER pozwalają także projektantom baz danych identyfikować i definiować relacje istniejące pomiędzy podmiotami.
Cały model ER znajduje się w załączniku poniżej. Możesz go po prostu zaimportować MySQL Workbench
Kliknij tutaj, aby pobrać model ER