1. Wprowadzenie do ERD
Diagram relacji encji (ERD) jest potężnym narzędziem wizualnym służącym do kompleksowego mapowania struktury bazy danych. Zapewnia graficzne przedstawienie, jak różne encje w bazie danych są ze sobą powiązane, jednocześnie wyróżniając atrybuty przypisane do każdej encji. ERD-y są niezastąpione w fazie projektowania bazy danych, ponieważ ułatwiają proces definiowania wymagań dotyczących danych i tworzą jasne zrozumienie architektury bazy danych. Ponadto świetnie nadają się do przekazywania skomplikowanych relacji danych, co czyni je niezwykle przydatnym narzędziem komunikacji zarówno dla osób technicznych, jak i nietechnicznych uczestniczących w projektach tworzenia baz danych.
Przykład ERD
Ogólny diagram relacji encji (ERD) to przedstawienie wizualne używane w projektowaniu baz danych do ilustracji struktury i relacji wewnątrz bazy danych.
Wygląd ERD może się różnić w zależności od złożoności bazy danych i stosowanych konwencji modelowania. Jednak w ogólnym ERD zobaczysz encje przedstawione jako prostokąty z ich atrybutami wymienionymi wewnątrz. Linie łączące encje wskazują relacje między nimi, a etykiety na linii określają charakter tych relacji. Oto prosty tekstowy przykład, jak może wyglądać ogólny ERD:

2. Podstawowe elementy ERD
Zanim przejdziemy do zaawansowanych koncepcji, krótko przejrzyjmy podstawowe elementy ERD:
- Encja: Reprezentuje obiekt lub pojęcie z rzeczywistego świata, takie jak osoba, miejsce lub rzecz. Encje są przedstawiane jako prostokąty w ERD.
- Atrybut: Opisuje własność lub cechę encji. Atrybuty są zazwyczaj wyświetlane jako owoce połączone z odpowiednimi encjami.
- Relacja: Ilustruje, jak encje są ze sobą powiązane. Relacje są przedstawiane jako linie łączące encje, często z frazą czasownika opisującą powiązanie.
- Mocność: Określa liczbę wystąpień jednej encji, które mogą być powiązane z inną encją. Powszechnymi oznaczeniami mocy są „1” dla jednego, „N” dla wielu i „0..1” dla relacji opcjonalnych.
- Klucz główny (PK): Klucz główny to unikalny identyfikator dla każdego rekordu (wiersza) w tabeli bazy danych. Zapewnia, że każdy wiersz ma unikalną i niepustą wartość, co czyni go kluczowym elementem integralności danych i efektywnego pobierania danych. W ERD klucz główny jest przedstawiany jako podkreślony atrybut wewnątrz encji.
- Klucz obcy (FK): Klucz obcy to atrybut lub zestaw atrybutów w jednej tabeli, który odnosi się do klucza głównego w innej tabeli. Ustanawia połączenie lub relację między danymi w dwóch tabelach. W ERD klucz obcy jest przedstawiany jako ciągła linia łącząca dwie encje, zazwyczaj z oznaczeniem wskazującym relację, np. „1:N” dla relacji jeden do wielu.
3. Zaawansowane koncepcje ERD
a. Podtypy i nadtypy
W niektórych przypadkach encje mogą być podzielone na podtypy, każdy z własnymi specyficznymi atrybutami. Ta koncepcja służy do przedstawiania relacji hierarchicznych wewnątrz encji.
Przykład: Rozważmy encję „Osoba” z podtypami „Pracownik” i „Klient”. Podtyp „Pracownik” może mieć atrybuty takie jak „IDPracownika” i „DataZatrudnienia”, podczas gdy podtyp „Klient” ma atrybuty takie jak „IDKlienta” i „DataRejestracji”.
b. Encje pośredniczące
Encje pośredniczące są używane do przedstawiania relacji wiele do wielu między dwiema encjami. Wprowadzają nową encję w celu rozwiązania relacji wiele do wielu.
Przykład: W bazie danych uczelni możesz mieć encję „Student” i encję „Kurs”. Aby przedstawić relację wiele do wielu między studentami a kursami, wprowadzasz encję „Zapis” z atrybutami takimi jak „IDZapisu” i „DataZapisu”.
c. Atrybuty wielowartościowe
Atrybuty wielowartościowe mogą mieć wiele wartości dla jednej encji. Często są przedstawiane jako podwójne owoce przypięte do encji.
Przykład: W encji „Książka” możesz mieć atrybut wielowartościowy „Autorzy”, który może zawierać wiele imion autorów.
d. Atrybuty pochodne
Atrybuty pochodne to atrybuty, których wartości można wyprowadzić na podstawie innych atrybutów w bazie danych. Zazwyczaj są one reprezentowane przez kreskowane elipsy.
Przykład: w encji „Osoba” możesz mieć atrybut pochodny „Wiek”, który można obliczyć na podstawie „Data urodzenia”.
4. Zaawansowane przykłady diagramów ERD
a. System zarządzania biblioteką
Stwórzmy diagram ERD dla systemu zarządzania biblioteką z zaawansowanymi koncepcjami:
- Encje: Książka, Autor, Student, Bibliotekarz, Transakcja
- Podtypy: Pracownik (Bibliotekarz), Klient (Student)
- Encja pośrednicząca: EgzemplarzKsiążki (do zarządzania wieloma kopiami książki)
- Atrybut wielowartościowy: Imię autora
- Atrybut pochodny: Wiek studenta

b. Platforma e-commerce
Zastanów się nad platformą e-commerce z zaawansowanymi funkcjami:
- Encje: Użytkownik, Produkt, Zamówienie, Płatność
- Podtypy: Klient, Sprzedawca
- Encja pośrednicząca: PozycjaZamówienia (do reprezentowania produktów w zamówieniu)
- Atrybut wielowartościowy: Atrybuty produktu (np. rozmiar, kolor)
- Atrybut pochodny: Całkowita cena zamówienia

6. Wnioski
Tworzenie zaawansowanych diagramów ERD obejmuje modelowanie skomplikowanych relacji i atrybutów danych. Zrozumienie podtypów, nadtypów, encji pośredniczących, atrybutów wielowartościowych oraz atrybutów pochodnych jest kluczowe do projektowania kompleksowych systemów baz danych. Dzięki odpowiednim narzędziom i koncepcjom możesz skutecznie przedstawić i przekazać strukturę swoich modeli danych.











