Upload
owen
View
77
Download
0
Embed Size (px)
DESCRIPTION
Bazy Danych Wprowadzenie. Wykład 1 Prowadzący: dr Paweł Drozda. Informacje Ogólne. Konsultacje wtorek 12:30 – 14:00 Dyżur wtorek 11:00 – 12:30 (oprócz terminów rady wydziału) pokój E 0/5 Zaliczenie ćwiczeń (moja grupa) Projekt Access (4 punkty) Projekt MySQL (6 punktów) - PowerPoint PPT Presentation
Citation preview
Bazy DanychWprowadzenie
Wykład 1Prowadzący: dr Paweł Drozda
dr P. Drozda
Informacje Ogólne Konsultacje
wtorek 12:30 – 14:00 Dyżur
wtorek 11:00 – 12:30 (oprócz terminów rady wydziału) pokój E 0/5
Zaliczenie ćwiczeń (moja grupa) Projekt Access (4 punkty) Projekt MySQL (6 punktów) Kolokwium SQL (11 punktów)
Informacje ogólne cd
Egzamin „zerówka” – dla osób z co najmniej 4,5 z
zaliczenia ćwiczeń - ustny dla pozostałych: pisemny + ustny
Terminy Zerówka 21 - 22 stycznia 2014 I termin 27 stycznia 2014 – godz 9:00 II termin 11 lutego 2014 – godz 9:00 III termin 14 lutego 2014 – godz 9:00
dr P. Drozda
dr P. Drozda
Program Wykładu (może ewoluować) Wprowadzenie Relacyjny model danych Modelowanie baz danych (diagramy związków encji) Przekształcanie modelu związków encji do modelu
relacyjnego Język baz danych SQL Normalizacja Fizyczna organizacja danych Transakcje Zarządzanie uprawnieniami Wyzwalacze, procedury składowane, funkcje
dr P. Drozda
Literatura J. Ullman, J. Widom „Podstawowy wykład z systemów baz
danych” http://wazniak.mimuw.edu.pl P. Beynon-Davies „Systemy baz danych” L. Banachowski „Bazy Danych – Tworzenie Aplikacji” Conolly, Begg „Systemy Baz Danych” Date, Wprowadzenie do Systemów Baz Danych”
dr P. Drozda
Plan Wykładu
Podstawowe pojęcia System zarządzania bazami danych
(DBMS) Właściwości baz danych Funkcje baz danych Modele danych
dr P. Drozda
Podstawowe pojęcia Baza danych – zbiór informacji opisujący wybrany fragment
rzeczywistości. Np. Dla sklepu: dane dotyczące sprzedawanych towarów w sklepie, klientów sklepu, pracowników, zamówień
Schemat baz danych – określa w jaka powinna być struktura danych oraz w jaki sposób dane są powiązane
System zarządzania bazą danych (DBMS) – zbiór narzędzi pozwalający na dostęp oraz na zarządzanie jedną lub wieloma bazami danych
System baz danych – baza danych + DBMS Model danych – zbiór ogólnych zasad posługiwania się
danymi
dr P. Drozda
System Bazy danych
Baza danych
DBMS
Schemat
Aplikacja
Aplikacja
Aplikacja
System Baz Danych
dr P. Drozda
System zarządzania bazą danych (1)
DaneMetadane
Moduł zarządzania pamięcią
Procesor zapytań
Moduł zarządzaniatransakcjami
Modyfikacja schematu
ZapytaniaAktualizacje
dr P. Drozda
System zarządzania bazą danych (2)
Moduł zarządzania pamięcią o przechowuje dane o miejscu zapisania
plików bazy danych na dyskuo Obsługuje pamięć operacyjną
(obsługiwane bloki z dysku przydzielane do pamięci operacyjnej)
dr P. Drozda
System zarządzania bazą danych (3)
Procesor zapytańo Przekształca zapytanie lub operację na
bazie danych (wyrażone np. w SQL) w ciąg poleceń żądających określonych danych
Moduł zarządzania transakcjamio Gwarantuje poprawność i kompletność
wykonania wszystkich transakcji (jedno lub więcej zapytań stanowiące grupę zadań do wykonania w jednym ciągu)
Cechy SZBD
Masywny – możliwość przechowywania TBs
Trwały – dane nie znikają Bezpieczny – odporny na awarię Wielu użytkowników – kontrola
wielodostępu
dr P. Drozda
Cechy SZBD
Wygodny – niezależny od danych, wysokopoziomowy język dostępu do danych
Efektywny – nawet tysiące zapytań na sekundę
Niezawodny – ponad 99% dostępności
dr P. Drozda
dr P. Drozda
Właściwości bazy danych (1) Współdzielenie danych – wielu
użytkowników tej samej bazy Integracja danych – baza nie powinna
mieć powtarzających się bądź zbędnych danych
Integralność danych – dokładne odzwierciedlenie obszaru analizy
Trwałość danych – dane przechowywane przez pewien czas
dr P. Drozda
Właściwości bazy danych (2) Bezpieczeństwo danych – dostęp do
bazy lub jej części przez upoważnionych użytkowników
Abstrakcja danych – dane opisują tylko istotne aspekty obiektów świata rzeczywistego
Niezależność danych – dane niezależnie od aplikacji wykorzystujących te dane
dr P. Drozda
Funkcje bazy danych
Aktualizujące – dokonują zmian na danych
Zapytań – wydobywają dane z bazy danych
dr P. Drozda
Modele Danych
Dla każdego modelu należy określić Definicja danych Operowanie danymi Integralność danych
dr P. Drozda
Modele danych
Modele historyczne (klasyczne)o Sieciowyo Hierarchiczny
Relacyjny model danych Obiektowy model danych
dr P. Drozda
Hierarchiczny model danych
Definicja danych Dwie struktury danych: typy rekordów
oraz związki nadrzędny – podrzędny Typ rekordu jest nazwaną strukturą
danych złożoną ze zbioru nazwanych pól np. Imię, Nazwisko. Dla każdego pola przyporządkowany jest typ danych
Związki nadrzędny – podrzędny jest związkiem jeden do wiele
dr P. Drozda
Hierarchiczny model danych Przykład
Rekord: Kurs Parent: none Fields( KodKursu : Charakter(6) NazwaKursu : Charakter(20)) Key: KodKursu
Record: Moduł Parent: Kurs Fields( nazwaModulu: Charakter(20) poziom: integer(1))Key: nazwaModulu
dr P. Drozda
Hierarchiczny model danych
Operowanie danymi Odpowiednie funkcje w wybranym języku
programowania Przykład
Dla każdego rekordu moduł If (poziom==1)Wypisz nazwaModulu;
dr P. Drozda
Hierarchiczny model danych
Integralność danych Dla każdego rekordu oprócz korzenia
istnieje rekord nadrzędny Usunięcie rekordu nadrzędnego
powoduje usunięcie wszystkich rekordów podrzędnych
Rekord podrzędny może mieć tylko jeden rekord nadrzędny
dr P. Drozda
Sieciowy model danych
Definicja danych Dwie struktury danych: typy rekordów i
typy kolekcji Pola rekordów mogą mieć typy złożone Typy kolekcji – opis związku jeden do
wiele między typami rekordów - posiada typ rekordu właściciela oraz typy rekordów członków
dr P. Drozda
Sieciowy model danych Przykład
Rekord KursFields(
KodKursu Charakter(6) NazwaKursu Charakter(20) ) Record Student
Fields(nrStudenta: Integer(6)Nazwisko: Charakter(20)Profil : NazwaKursu: charakter(20, rok:Integer(1), Stopień:integer(1))
Set: MaOwner: KursMember: Student
dr P. Drozda
Sieciowy model danych
Operowanie danymi – podobnie jak w hierarchicznym
Integralność danych – głównie określenie członkostwa w kolekcji – może być wymagane lud opcjonalne
dr P. Drozda
Obiektowy model danych Definicja danych – obiekty i klasy obiektów, mechanizmy
abstrakcji Obiekty – zbiór danych i procedur Klasy obiektów – zbiór podobnych obiektów – te same atrybuty,
metody i związki; definiują schemat bazy danych Mechanizmy abstrakcji – uogólnienie i agregacja
Uogólnienie – definiowanie pewnych klas obiektów jako podklasy innych obiektów
Agregacja – obiekt wyższego poziomu grupuje obiekty niższego poziomu
Dziedziczenie – struktury oraz zachowania Struktury – klasy podrzędne posiadają wszystkie atrybuty klas
nadrzędnych Zachowania – wszystkie metody klas nadrzędnych mogą być
wykonywane przez klasy podrzędne
dr P. Drozda
Obiektowy model danych Definicja danych – przykład
Class Student Superclass Object Attributes
Nazwisko: charakterAdres: charakterDataUrodzenia: date
Class Magistrant Superclass Student Relationships
Uczestnik Set(Kurs)
dr P. Drozda
Obiektowy model danych
Operowanie danymi Za pomocą metod określonych na
obiektach – cztery główne typy Metody tworzenia Metody usuwania Metody dostępu Metody przekształcenia
dr P. Drozda
Obiektowy model danych
Integralność danych – wewnętrzna i dodatkowa Wewnętrzna
Klasa – klasa Klasa – obiekt Dziedziny Referencyjna
Dodatkowa – definiowana w treściach metod