Przykłady diagramów ERD
Tu znajdziesz systemy, które najczęściej pojawiają się na zajęciach z baz danych. Do każdego dołączony jest SQL, który go buduje. Na każdej stronie diagram i słownik danych są widoczne w całości i za darmo, a SQL można skopiować.
Pierwszy raz widzisz tę notację? Strona Diagram ERD wyjaśnia, co znaczą prostokąty i zakończenia linii, zanim cokolwiek skopiujesz.
- System szkolny
Diagram ERD systemu szkolnego: uczniowie, nauczyciele, przedmioty, grupy zajęciowe, zapisy z ocenami i obecność – z SQL i słownikiem danych.
- System szpitalny
Diagram ERD systemu szpitalnego: pacjenci, lekarze, oddziały, wizyty, hospitalizacje i recepty – z SQL i słownikiem danych.
- System biblioteczny
Diagram ERD systemu bibliotecznego: książki, autorzy, egzemplarze, czytelnicy, wypożyczenia i rezerwacje – z SQL i słownikiem danych.
- Diagram ERD: E-commerce Store
Czego uczy: tabele łączące z własnymi danymi, kategorie odwołujące się do samych siebie, ceny zamrożone w chwili zakupu
- Diagram ERD: Blog Platform
Czego uczy: każdy rodzaj relacji w pięciu tabelach, klasyczny pierwszy schemat
- Diagram ERD: Hotel Management System
Czego uczy: rezerwacje na zakres dat i dlaczego dostępność to zapytanie, a nie kolumna
- Diagram ERD: Banking System
Czego uczy: dwa klucze obce do jednej tabeli i księgi, do których tylko się dopisuje
- Diagram ERD: Inventory Management System
Czego uczy: bieżące stany razem z historią ruchów, uzgadniane ze sobą
- Diagram ERD: CRM
Czego uczy: etapy lejka sprzedaży jako dane i trójkąt firma, kontakt, transakcja
- Diagram ERD: Restaurant Management System
Czego uczy: receptura jako tabela łącząca na wzór zestawienia materiałowego i stoliki przydzielane przy sadzaniu gości, a nie przy rezerwacji
- Diagram ERD: Northwind Database
Czego uczy: klucze naturalne, struktura organizacyjna odwołująca się do samej siebie i klucz obcy o nazwie ship_via
- Diagram ERD: AdventureWorks Database
Czego uczy: wspólna tabela nadtypu dla osób, sklepów i dostawców oraz własne opisy kolumn od Microsoftu
- Diagram ERD: Sakila Database
Czego uczy: cykl kluczy obcych między staff i store oraz kopia do wyszukiwania synchronizowana wyzwalaczami
- Diagram ERD: Chinook Database
Czego uczy: dwa klucze obce do jednej tabeli, o których nazwy nic nie mówią, i ceny zamrożone w chwili sprzedaży
Te przykłady otwierają się po angielsku. Trzy pierwsze na liście są przetłumaczone.
Pytania, zanim coś skopiujesz
Jakie są główne typy schematów baz danych?
Zwykle wymienia się cztery: płaski (jedna tabela, bez relacji), hierarchiczny (ścisłe drzewo rodzic–dziecko), sieciowy (rekord może mieć kilku rodziców) i relacyjny (tabele połączone kluczami). Wszystkie przykłady poniżej są relacyjne, bo takie są PostgreSQL, MySQL, SQL Server i SQLite. Pozostałe trzy to głównie historia albo sposób opisu baz dokumentowych i grafowych, które w ogóle nie składają się z tabel.
Czy mogę użyć tych schematów we własnym projekcie albo zadaniu?
Tak. Każda strona podaje cały SQL, który działa w PostgreSQL bez zmian. To schematy do nauki, a nie produkcyjne. Każdy da się przeczytać za jednym posiedzeniem. Każdy jest zbudowany wokół jednej decyzji projektowej, którą warto przejąć albo z którą warto się spierać, a w zadaniu przyda się jedno i drugie.
Jak zrobić z tego diagram mojej własnej bazy?
Podmień SQL. Wyeksportuj swój schemat przez pg_dump --schema-only albo mysqldump --no-data i wklej go w miejsce przykładu. Możesz też wkleić schemat Prisma, DBML, Mermaid, PlantUML albo modele Django, SQLAlchemy, Sequelize czy TypeORM. Format jest rozpoznawany na podstawie wklejonego tekstu. Nic nie jest wysyłane, analiza odbywa się w twojej przeglądarce.
Od którego przykładu zacząć?
Zacznij od schematu bloga, jeśli chcesz zobaczyć każdy rodzaj relacji w pięciu tabelach. Weź sklep internetowy, jeśli potrzebujesz tabeli łączącej z własnymi danymi. Jeśli twój problem tak naprawdę dotyczy czasu, weź schemat hotelu albo biblioteki. Rezerwacje, wypożyczenia i dostępność to miejsca, gdzie początkujący najczęściej robią z zapytania kolumnę. Jeśli chcesz bazę, którą spotkasz na kursie SQL, zacznij od Northwind albo Chinook. Jeśli chcesz bazę zbudowaną jak prawdziwa firma, weź AdventureWorks.
Masz własny schemat? Wklej go na stronie głównej: to samo narzędzie, twoje tabele. Dokument referencyjny do druku tworzy generator słownika danych.