Skip to content

Instantly share code, notes, and snippets.

@karlosos
Created December 13, 2015 14:08
Show Gist options
  • Save karlosos/676dfee14f6e3cfaa9b9 to your computer and use it in GitHub Desktop.
Save karlosos/676dfee14f6e3cfaa9b9 to your computer and use it in GitHub Desktop.

Baza danych - szkoła

Założenia

Diagram związków encji

Encja kursy

Cztery główne encje przedstawiające do czego na służyć baza danych. Z diagramu dowiadujemy się, że baza ma przechowywać kursy, które będą prowadzone przez nauczycieli w relacji wiele do wielu – czyli jeden wykładowca może prowadzić więcej niż jeden kurs, oraz kurs może być prowadzony przez więcej niż jednego wykładowce. Encja kursy ma zawierać nazwę kursu oraz jakiego podręcznika używa.

Encja kursant

Kursanci, którzy mogą uczestniczyć w więcej niż jednym kursie, oraz jeden kurs może mieć więcej niż jednego kursanta – a więc znowu mamy relacje wiele do wielu.

Encja Wykladowca

Relacje między kursantami, a wykładowcami mają być takie same – wiele do wielu – także jeden nauczyciel może mieć więcej niż jednego ucznia, oraz jeden uczeń może mieć więcej niż jednego nauczyciela – co można wywnioskować z relacji wcześniejszych tabel. Oprócz tego każdy wykładowca może oceniać każdego ucznia. Wykładowca tak samo jak w przypadku ucznia określany jest przez szczegółowe dane, jakie kursy prowadzi i w czym się specjalizuje.a kursu oraz jakiego podręcznika używa.

Encja podręcznik

Na koniec do zrobienia mamy tabele z podręcznikami, które mogą być używane przez kursy w postaci wiele do wielu, oraz wypożyczane przez kursantów. Encja ta ma zawierać informacje na temat podręcznika.

Wykorzystane narzędzia

Narzędzie cel
postgresql system bazy danych
pgadmin graficzny program do zarządzania bazą
phpmyadmin posiłkowanie w celu tworzenia relacji

Wynik pracy

Schemat bazy

Tabele

Nazwa tabeli przeznaczenie
Tabela r_wykladowca_kurs jako relacja wiele do wielu między kursem a wykładowcą,
Tabela r_wykladowca_specjalizacja jako relacja wiele do wielu między specjalizacją a wykładowcą,
Tabela r_kursant_kurs jako relacja wiele do wielu między kursem a kursantem
Tabela osoba aby połączyd kursantów oraz wykładowców (zapobiec potencjalnemu śmietnikowi w bazie danych),
Tabela wypozyczenie aby kontrolowad kto (wraz z datą i terminem zwrotu) oraz jaki podręcznik zostal pożyczony,
Tabela adresy z adresami wszystkich osób uczeszczających na uczelnie,
Tabela oceny jaki wykładowca dał jaką ocene jakiemu uczniowi oraz kiedy

Widoki

Spis wypożyczonych podręczników

Spis nieoddanych podręczników

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment