Wykład 1 (28.II 2026)
-
Główne pojęcia: dane, baza danych, system zarządzania bazą danych, użytkownicy, cechy systemów baz danych.
Modelowanie danych: model związków encji, diagramy związków encji, klasyfikacja związków binarnych, dalsze zagadnienia (dziedziczenie, encje słabe), przykłady.
Wykład 2 (21.III 2026)
-
Problemy modelowania: poziomy abstrakcji, dane bieżące vs historyczne, cykle w diagramie związków encji, tabele słownikowe, związki niebinarne.
Model relacyjny: tabele, relacje a tabele, schematy relacji, klucze i inne więzy integralności.
Wykład 3 (28.III 2026)
-
Język SQL, cz. 1: definiowanie danych (CREATE/DROP/ALTER TABLE).
Odwzorowanie modelu encji i związków w model relacyjny: odwzorowanie encji, atrybutów, związków 1:1, 1:N, M:N, niebinarnych, związek "jest".
Wykład 4 (11.IV 2026)
-
Algebra relacji: obcięcie, rzut, złączenie (wewnętrzne, naturalne, zewnętrzne), operacje teoriomnogościowe, funkcje agregujące. Rachunek krotek i rachunek dziedzin.
Język SQL, cz. 2: operowanie na danych: Instrukcja SELECT: główne przykłady, realizacja operacji obcięcia, rzutu, iloczynu kartezjańskiego i złączenia, atrybuty wynikowe, porządkowanie, grupowanie i funkcje agregujące.
Wykład 5 (25.IV 2026)
-
Język SQL c.d.: Instrukcja SELECT: aliasy, zagnieżdżenia skorelowane i nieskorelowane.
Instrukcje INSERT, UPDATE i DELETE. -
Język SQL, uzupełnienia: Perspektywy, tabele tymczasowe.
Instrukcja SELECT: wydajność różnych zapytań, kwantyfikatory. Wykład 6 (9.V 2026)
Wykład 7 (9.V 2026)
-
Programowalność. Architektura SZBD. Programowanie po stronie serwera.
Procedury wyzwalane. Wykład 8 (16.V 2026)
-
Programowanie po stronie klienta.
Dostęp do bazy poprzez Internet; atak SQL injection. -
Zarządzanie współbieżnością: transakcje, poziomy izolacji.
Wykład 9 (30.V 2026)
-
Zarządzanie współbieżnością: blokady i inne narzędzia.
Bezpieczeństwo w bazach danych.
Wykład 10 (13.VI 2026)
-
Organizacja pamięci – indeksowanie.