Bazy danych (wspólne z 1000-715BDU) 1000-134BAD
Do cyklu 2022 przedmiot prowadzony pod nazwą "Bazy danych i i usługi sieciowe"
Podstawowe pojęcia: dane, informacje, obszar analizy, encje, atrybuty, baza danych, więzy integralności. (1 wykład)
Rozróżnienie fizycznego i logicznego modelu danych. Logiczne modele danych - model relacyjny. Projektowanie związków encji w postaci opisu słownego, diagramu ER i słownika danych. Typy związków encji. (2 wykłady)
Teoria związków funkcyjnych: reguły wnioskowania, domknięcia zbiorów związków funkcyjnych i zastosowanie do wyszukiwania klucza. Normalizacja: pierwsza, druga i trzecia postać normalna, postać Boyca-Codda. Korzyści wynikające z normalizacji. Projektowanie bazy z wykorzystaniem normalizacji. (3 wykłady)
Język SQL: typy danych i logika SQL, instrukcje select, insert, delete i update. Zakładanie i usuwanie tabel. Prawa dostępu (instrukcje grant i revoke). (3 wykłady)
Fizyczny model danych i organizacja danych na dysku. Teoria transakcji: mechanizmy lockowania, protokół dwufazowego potwierdzania. Zlecenia SQL commit i rollback. Poziomy izolacji transakcji. (2 wykłady)
System zarządzania bazą danych: usługi DBMS (formatki i raporty), indeksowanie (budowa indeksów gęstych i rzadkich, struktura B-drzewa), optymalizacja zapytań. Podstawowe zasady tworzenia aplikacji. (3 wykłady)
Rozproszone bazy danych i architektura klient-serwer. Obiektowe bazy danych, hurtownie danych, narzędzia projektowania bazy danych CASE. Systemy OLAP (OnLine Analitycal Processing). (1 wykład)
Rodzaj przedmiotu
Koordynatorzy przedmiotu
Efekty kształcenia
Wiedza
Zna problemy, techniki i narzędzia związane z budową oprogramowania korzystającego z relacyjnych baz danych, w szczególności:
● ma wiedzę w formalizmu relacyjnych baz danych i języków dostępu do nich,
● ma wiedzę w zakresie metod projektowania relacyjnych baz danych i zasad oceny modeli projektowych (normalizacja),
● zna przykłady oprogramowania do komunikacji języków programowania z serwerami baz danych,
● posiada dobrą orientację w trendach rozwojowych współczesnych baz danych.
Umiejętności
● Potrafi zbudować niedużą aplikację opartą na bazie danych,
używającą przeglądarki WWW do komunikacji z użytkownikami.
Kompetencje
● Rozumie konieczność systematycznej pracy nad wszelkimi projektami, które mają długofalowy charakter (K_K03).
Kryteria oceniania
Warunkiem zaliczenia przedmiotu jest:
- uruchomienie w laboratorium aplikacji internetowej opartej na relacyjnej bazie danych Postgres
- zdanie egzaminu teoretycznego (dwuczęściowego)
Na ocenę ostateczną składa się
- ocena z kolokwium w połowie semestru (20%)
- ocena przedstawionej aplikacji (w sumie 50%: 10% ERD, 10% skrypt SQL, 30% projekt i wykonanie aplikacji)
- ocena z egzaminu końcowego (30%).
W celu uzyskania pozytywnej oceny należy uzyskać 60% możliwych punktów.
Literatura
J.S. Bowman, S.L. Emerson, M. Darnovsky, Podręcznik języka SQL, WNT, Warszawa 2001.
T. Connolly, C. Begg, Systemy baz danych. Praktyczne metody projektowania, implementacji i zarządzania tom 1 i 2, Wydawnictwo RM, Warszawa 2004.
C.J. Date, Wprowadzenie do baz danych, WNT, Warszawa 1981.
J.R. Groff, P.N. Weinberg, Using SQL, Osborne McGraw-Hill, 1990.
J.D. Ullman, Systemy baz danych, WNT, Warszawa 1988.
J.D. Ullman, J. Widom, Podstawowy wykład z systemów baz danych,
Więcej informacji
Więcej informacji o poziomie przedmiotu, roku studiów (i/lub semestrze) w którym się odbywa, o rodzaju i liczbie godzin zajęć - szukaj w planach studiów odpowiednich programów. Ten przedmiot jest związany z programami:
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: