Diagramy związków encji ERD Ćwiczenia w modelowaniu danych dr Lidia Stępień wykład 5
ERD ang. Entity-Relationship Diagram Diagram związków encji Proces konstruowania projektu systemu bazy danych. Abstrakcyjna analiza danych z góry na dół. Modelowanie semantyczne celem jest reprezentowanie danych w taki sposób, w jaki są widziane w rozważanym obszarze analizy.
Diagramy związków encji Encja rzecz, która istnieje niezależnie i jest jednoznacznie identyfikowana. Typ encji kategoria: dom, samochód, człowiek. Instancja encji: budynek AJD przy AK 13/15, mój samochód, Jan Kowalski. Atrybut własność, np. imię, nazwisko, pesel są atrybutami osoby.
Diagramy związków encji - Notacja Encja Atrybut
Diagramy związków encji Związki pewne powiązanie między encjami, np. Dom jest zamieszkiwany przez osobę. Dom jest własnością osoby.
Liczebność 1-1 1-M M-N
Uczestnictwo Opcjonalność Uczestnictwo wymagane
Diagram Venna
Wykluczanie r1 wykłada, jest wykładany przez r2 przygotowuje, jest przygotowywany przez
Zawieranie r1 wykłada, jest wykładany przez r2 przeprowadza egzamin z, jest egzaminowany
Związki rekurencyjne. Rozszerzenia modelowania danych
Rozszerzenia modelowania danych Związki trójargumentowe.
Role Rozszerzenia modelowania danych
Upraszczanie związków M-N A B
Wiatrak PUŁAPKI POŁĄCZEŃ
PUŁAPKI POŁĄCZEŃ Pułapka próżni
Modelowanie czasu
Przekształcanie w schemat relacyjny Encja to tabela. Identyfikujący atrybut to klucz główny tabeli. Inne atrybuty to niegłówne atrybuty tabeli. Związek jeden do wiele - klucz główny tabeli ze strony jeden wstawiamy do tabeli ze strony wiele. Opcjonalność czy klucz obcy może być NULL.
UWAGI Trudność przyporządkowania danych do jednej z trzech kategorii: encji, związku, atrybutu, np. ślub. Wraz ze wzrostem liczby szczegółów maleje sprawność tej metody. Wraz z rysowaniem coraz większej liczby encji, związków i atrybutów, diagramy stają się mniej czytelne i trudniejsze do operowania. Z tego powodu analitycy danych (projektanci) wykorzystują często tzw. słownik danych
Reprezentowanie encji W słowniku danych encję reprezentują: opis jej znaczenia, atrybuty identyfikujące i pozostałe atrybuty, np. ENCJA: student OPIS: Każda osoba zapisana na kierunek na AJD IDENTYFIKUJĄCY ATRYBUT: NrStudenta INNE ATRYBUTY: Imię, Nazwisko, ulica, kod, miasto, telefon
Reprezentowanie związków Związki są oznaczane jednoznacznymi identyfikatorami. Dla każdej encji w związku określamy: nazwę, opcjonalność i liczebność. Dodajemy również krótki opis, aby jednoznacznie rozumieć znaczenie związku
Przykład opisu związku w słowniku danych ID ZWIĄZKU: r1 NAZWY ZWIĄZKU: jest zapisany na, ma na liście OPIS: powiązanie studenta z kierunkiem, na który jest zapisany ENCJA 1: student LICZEBNOŚĆ: wiele OPCJONALNOŚĆ: wymagany ENCJA 2: kierunek LICZEBNOŚĆ: wiele OPCJONALNOŚĆ: opcjonalny
Reprezentowanie atrybutów Przy bardziej szczegółowej specyfikacji wymagany jest opis atrybutów. W słowniku danych opis atrybutu tworzą jego nazwa, opis oraz typ. NAZWA ATRYBUTU: etat OPIS: możliwe stanowisko wykładowcy TYP: znakowy { asystent, adiunkt, profesor, wykładowca, starszy wykładowca, lektor}
UWAGI Gdy schemat dla tego samego obszaru analizy tworzy więcej niż jedna osoba, możemy uzyskać więcej niż jeden schemat. Wynika to z różnych sposobów analizy obszaru: Można użyć różnych nazw dla tej samej encji w różnych schematach synonimy, np. raz encja wykładowca, a gdzie indziej pracownik. Można użyć tej samej nazwy w różnych schematach do opisu różnych encji homonimy, np. student studiów pierwszego stopnia lub student studiów doktoranckich. Można w różny sposób reprezentować daną sytuację ze świata rzeczywistego, np. adres raz jako atrybut, raz jako osobna encja. Można popełnić błąd, np. określając w różny sposób liczebność związku.
P R Z Y K Ł A D
Diagram związków encji Każdy sędzia ma listę spraw, które będzie prowadził. Jednej sprawie, przewodniczy tylko jeden sędzia. Do każdej sprawy jest przydzielony jeden prokurator, który reprezentuje prokuraturę. Każda sprawa będzie się odbywać w jednym z sądów z ustaloną datą rozpoczęcia i przybliżonym czasem trwania. Sprawa może dotyczyć więcej niż jednego przestępstwa. Każde przestępstwo może mieć jednego lub więcej oskarżonych. Każdy oskarżony może mieć jednego lub więcej adwokatów. Jeśli przestępstwo dotyczy kilku oskarżonych, to każdy oskarżony może mieć jednego lub więcej obrońców. Oskarżeni mogą mieć wytoczoną więcej niż jedną sprawę.
Każdy sędzia ma listę spraw, które będzie prowadził. Jednej sprawie, przewodniczy tylko jeden sędzia.
Do każdej sprawy jest przydzielony jeden prokurator, który reprezentuje prokuraturę.
Każda sprawa będzie się odbywać w jednym z sądów z ustaloną datą rozpoczęcia i przybliżonym czasem trwania.
Każda sprawa będzie się odbywać w jednym z sądów z ustaloną datą rozpoczęcia i przybliżonym czasem trwania.
Sprawa może dotyczyć więcej niż jednego przestępstwa.
Sprawa może dotyczyć więcej niż jednego przestępstwa.
Każde przestępstwo może mieć jednego lub więcej oskarżonych.
Każde przestępstwo może mieć jednego lub więcej oskarżonych.
Każdy oskarżony może mieć jednego lub więcej adwokatów.
Jeśli przestępstwo dotyczy kilku oskarżonych, to każdy oskarżony może mieć jednego lub więcej obrońców.
Oskarżeni mogą mieć wytoczoną więcej niż jedną sprawę.
Oskarżeni mogą mieć wytoczoną więcej niż jedną sprawę.
Diagram ostateczny