Sylabus do programu kształcenia obowiązującego od roku akademickiego 2012/13 Nazwa przedmiotu Bazy danych Nazwa jednostki prowadzącej przedmiot Instytut Matematyki Kod przedmiotu Studia Kierunek studiów Poziom kształcenia Forma studiów Matematyka Studia pierwszego stopnia Studia stacjonarne Rodzaj przedmiotu specjalnościowy Rok i semestr studiów III rok, V semestr Imię i nazwisko koordynatora dr Barbara Pękala przedmiotu Imię i nazwisko osoby prowadzącej dr Barbara Pękala (wykład), dr Urszula Dudziak ( osób prowadzących) zajęcia z (laboratoria), dr Anna Król (laboratoria) przedmiotu Cele zajęć z przedmiotu Celem przedmiotu jest zapoznanie studentów z podstawowymi pojęciami i koncepcjami technologii systemów baz danych, niezbędnymi do poprawnego projektowania, korzystania i implementacji systemów baz danych i ich aplikacji. W ramach tego przedmiotu studenci zapoznają się przede wszystkim z podstawowymi zasadami modelowania i projektowania baz danych, relacyjnym modelem danych, standardowym językiem baz danych SQL, normalizacją schematów logicznych baz danych oraz logiczną organizacją i podstawowymi strukturami fizycznymi danych wykorzystywanymi w systemach baz danych. Wymagania wstępne Wiadomości szkolne. Podstawowe wiadomości z zakresu: architektury sprzętowoprogramowej komputerów, dowolnych języków programowania, algebry, podstawowe wiadomości z zakresu teorii mnogości. Efekty kształcenia Wiedza: • charakteryzuje dane z rzeczywistości, które pogrupowane zostaną umieszczone w bazie • definiuje zależności funkcyjne występujące pośród analizowanych danych • prezentuje relacyjny model danych-przedstawia rozważany zbiór danych w sposób relacyjnej bazy danych • ilustruje operacje wykonywane w bazie przez użytkownika za pomocą języka SQL Umiejętności: • analizuje zależności funkcyjne występujące pośród analizowanych danych • konstruuje relacyjny model danych • wdraża teorię o normalizacji bazy w praktyce przy tworzeniu tabel • konstruuje zapytania do bazy (tworzenie, modyfikacja, zabezpieczenia) w języku SQL 1 Kompetencje społeczne: • samodzielnie wyszukuje informacje w literaturze i właściwie je stosuje • zachowuje ostrożność przy analizie danych • dyskutuje o potrzebach użytkowników bazy danych Forma(y) zajęć, liczba realizowanych godzin Wykład – 30 godzin Ćwiczenia laboratoryjne – 30 godzin Treści programowe A. Problematyka wykładu Treści merytoryczne Wprowadzenie do baz danych z elementami historii. Zostaną tu omówione m.in.: podstawowa terminologia stosowana w czasie kursu, charakterystyka baz danych, wymagania stawiane bazom danych, cechy technologii baz danych, wprowadzenie do modeli danych, charakterystyka użytkowników baz danych, charakterystyka sposobów korzystania z bazy danych, architektury: wewnętrzna i komunikacyjna baz danych, ogólny podział baz danych. Liczba godzin 2 Systemy zarządzania bazami danych (cechy systemu zarządzania bazą danych). 1 Modele danych (relacyjny model danych) z uwzględnieniem struktur danych tego modelu, operacji modelu i ograniczeń. 1 Projektowanie poprawnych i efektywnych relacyjnych baz danych. Moduł zawiera m.in.: wprowadzenie do modelowania i projektowania systemów informatycznych; model związków-encji (jako jeden z fundamentalnych modeli wykorzystywanych przy projektowaniu relacyjnych baz danych) z uwzględnieniem encji i ich atrybutów, różnego typu związków pomiędzy encjami oraz hierarchii encji; techniki transformacji modelu związków-encji do modelu relacyjnego (transformacje encji, transformacje związków i transformacje hierarchii encji); proces normalizacji schematu logicznego poprzedzony przykładem ilustrującym problem, zależności funkcyjne stanowiące punkt wyjścia procesu normalizacji, postaci normalne (pierwsza, druga, trzecia i czwarta oraz BCNF). 6 Elementy języka SQL. Zostaną tu omówione m.in.: poszczególne fazy przetwarzania zapytań (analiza, normalizacja, analiza semantyczna, upraszczanie, restrukturyzacja), algebraiczne reguły transformacji zapytań, technika przepisywania zapytań jako ważny mechanizm optymalizacji wykonywania zapytań. 4 2 Implementacja baz danych w języku SQL. Zostaną tu omówione m.in.: grupy poleceń SQL, ogólna składnia poleceń, podstawowe polecenie wyszukiwania danych, czyli SELECT, wybór wierszy za pomocą klauzuli WHERE, porządkowanie wyników zapytania za pomocą klauzuli ORDER BY, podstawowe funkcje operujące na pojedynczych wierszach (funkcje znakowe, numeryczne i daty), funkcje obliczające agregaty (SUM, MIN, MAX, AVG, COUNT), połączenia równościowe, nierównościowe, połączenia zewnętrzne i połączenia rekursywne (tabeli samej z sobą), podzapytania zwykłe i skorelowane, wstawianie, modyfikowanie i usuwanie danych z tabel (INSERT, UPDATE i DELETE), polecenia tworzenia, modyfikowania i usuwania tabel oraz polecenia tworzenia i zarządzania ograniczeniami integralnościowymi. 8 Dostęp do baz danych za pośrednictwem sieci INTERNET Informacja o specyficznych pojęciach związanych z tematyką baz danych (rozproszone bazy danych, hurtownie danych, obiektowe bazy danych, itd.). Suma godzin 6 2 B. Problematyka zajęć laboratoryjnych Treści merytoryczne Analiza i charakteryzacja danych, ogólny schemat bazy danych Projektowanie poprawnych i efektywnych relacyjnych baz danych. Tworzenie modelu związków-encji (jako jeden z fundamentalnych modeli wykorzystywanych przy projektowaniu relacyjnych baz danych) z uwzględnieniem encji i ich atrybutów, różnego typu związków pomiędzy encjami oraz hierarchii encji; techniki transformacji modelu związków-encji do modelu relacyjnego (transformacje encji, transformacje związków i transformacje hierarchii encji); proces normalizacji schematu logicznego poprzedzony przykładem ilustrującym problem, zależności funkcyjne stanowiące punkt wyjścia procesu normalizacji, postaci normalne (pierwsza, druga, trzecia i czwarta oraz BCNF). 30 Liczba godzin 4 6 Implementacja baz danych z wykorzystaniem programu Microsoft Access Poznanie dostępnych typów danych, tworzenie i obsługa tabel, kwerend, raportów i stosowanie zabezpieczeń 8 Używanie języka SQL w obsłudze bazy Zostaną tu omówione m.in.: grupy poleceń SQL, ogólna składnia poleceń, polecenia tworzenia, modyfikowania i usuwania tabel oraz polecenia tworzenia i zarządzania ograniczeniami integralnościowymi, podstawowe polecenie wyszukiwania danych, czyli SELECT, wybór wierszy za pomocą klauzuli WHERE, porządkowanie wyników zapytania za pomocą klauzuli ORDER BY, podstawowe funkcje operujące na pojedynczych wierszach (funkcje 8 3 znakowe, numeryczne i daty), funkcje obliczające agregaty (SUM, MIN, MAX, AVG, COUNT), połączenia równościowe, nierównościowe, połączenia zewnętrzne i połączenia rekursywne (tabeli samej z sobą), podzapytania zwykłe i skorelowane, wstawianie, modyfikowanie i usuwanie danych z tabel (INSERT, UPDATE i DELETE) Dostęp do baz danych za pośrednictwem sieci INTERNET Suma godzin Metody dydaktyczne Całkowity nakład pracy studenta potrzebny do osiągnięcia założonych efektów w godzinach oraz punktach ECTS Wykład, wykład z prezentacją multimedialną, rozwiązywanie zadań, laboratorium Aktywność Wykład Laboratorium udział w konsultacjach przygotowanie do laboratoryjnych Nakład pracy studenta w godz. zajęć 30 30 7 30 Przygotowanie do kolokwium przygotowanie projektu zaliczeniowego przygotowanie do egzaminu 15 20 Egzamin 3 SUMA GODZIN Język wykładowy 4 30 LICZBA PUNKTÓW ECTS polski 30 165 7 4