Projektowanie baz danych

Praktyczne ćwiczenie do wykonania

Bazy danych Projektowanie baz danych

System zarządzania biblioteką szkolną

Biblioteka szkolna potrzebuje bazy danych do zarządzania wypożyczeniami książek przez uczniów. Baza powinna przechowywać informacje o książkach, autorach, uczniach, nauczycielach (opiekunach), wypożyczeniach i karach za spóźnienia.

Wymagane tabele:

  1. Uczniowie

    • ID_ucznia (klucz główny)
    • Imię
    • Nazwisko
    • Klasa
    • Data_urodzenia
  2. Nauczyciele

    • ID_nauczyciela (klucz główny)
    • Imię
    • Nazwisko
    • Przedmiot
    • Email
  3. Autorzy

    • ID_autora (klucz główny)
    • Imię
    • Nazwisko
    • Kraj_pochodzenia
  4. Książki

    • ID_ksiazki (klucz główny)
    • Tytuł
    • Rok_wydania
    • Gatunek
    • ID_autora (klucz obcy → Autorzy)
  5. Wypożyczenia

    • ID_wypozyczenia (klucz główny)
    • ID_ucznia (klucz obcy → Uczniowie)
    • ID_ksiazki (klucz obcy → Książki)
    • Data_wypozyczenia
    • Data_zwrotu (NULL jeśli książka wciąż wypożyczona)
  6. Kary

    • ID_kary (klucz główny)
    • ID_wypozyczenia (klucz obcy → Wypożyczenia)
    • Kwota
    • Powód (np. „przekroczony termin zwrotu”)

Zasady powiązań:

  • Każdy uczeń może mieć wiele wypożyczeń.
  • Każda książka ma jednego autora, ale jeden autor może napisać wiele książek.
  • Każde wypożyczenie może mieć 0 lub 1 przypisaną karę.
  • Nauczyciele nie wypożyczają książek, ale odpowiadają za klasy – można opcjonalnie dodać relację: każdy uczeń ma przypisanego nauczyciela-opiekuna (klucz obcy w tabeli Uczniowie).