Bazy Danych - wykład (digit), Bazy Danych, Bazy danych
[ Pobierz całość w formacie PDF ]
Literatura
- J. Ullman, J. Widom, „Podstawowy wykład z systemów baz danych”, WNT, Warszawa
2000.
- C. Date, „Wprowadzenie do systemów baz danych”, WNT, Warszawa 2000
-
Thomas Connolly, Carolyn Begg, „Systemy baz danych” Tom 1 i Tom 2, Praktyczne
metody projektowania implementacji i zarządzania, Wydawnictwo RM 2004
-
Jan L. Harrington, „SQL dla każdego”, Mikom, Warszawa czerwiec 2000
-
Steven Roman, Access. Baza danych. Projektowanie i programowanie, Helion, Czerwiec
2001
-
Ramez Elmasri, Shamkant B. Navathe, Wprowadzenie do systemów baz danych, Helion
2005
Tematyka wykładów
•
Podstawowe pojęcia
•
baza danych
•
systemy zarządzania bazą danych
•
Historia oprogramowania baz danych
•
Diagramy związków encji
•
SQL
•
Modele danych
•
proste modele danych
•
klasyczne modele danych
•
semantyczne modele danych
•
Architektury systemu bazy danych
•
poziom zewnętrzny
•
poziom koncepcyjny
•
poziom wewnętrzny
•
Relacyjny model danych
•
podstawowe teorie dla baz relacyjnych
•
algebra działań na relacjach
•
normalizacja
•
Przetwarzanie zapytań
•
Przetwarzanie transakcji
•
Bezpieczeństwo baz danych
Warunki zaliczenia
-
laboratoriów (?)
-
egzamin (trzeba mieć zaliczenie z laborek, ocena do indeksu = średnia ważona 0.6*Egz
+ 0.4 Lab) egzamin pisemny z części teoretycznej i praktycznej (dwie części - jedna
ocena), nie ma zwolnień z egzaminu
Bazy danych
Podstawowe pojęcia
•
Słownik online Webstera definiuje bazę danych jako duży zbiór danych o określonej
strukturze, która umożliwia im szybkie wyszukiwanie.
•
Wieczerzyński (1994) - nazywa bazą danych zbiór powiązanych danych
•
Delobel (1991) - definiuje bazę danych jako uporządkowany zbiór danych, do których
może mieć dostęp wielu użytkowników jednocześnie w dowolnym odpowiadającym im
momencie
•
Baza danych jest to logicznie spójny zbiór danych przechowywanych w komputerze,
które służą określonym celom i do których istnieje współbieżny dostęp wielu
użytkowników.
Pańkowski - rok 1992
System bazy danych = baza danych + system zarzadzania baza danych
SBD = ({P, BD, SZBD, SO, U}, R)
•
P - pamięć zewnętrzna oraz wewnętrzna komputera
•
BD - właściwa baza danyc, zawierająca dane oraz schemat
•
SZBD - system zarządzania bazą danych
•
SO - system operacyjny komputera
•
U - programy użytkowe korzystające z bady danych
•
R - zbiór relacji określających powiązania pomiędzy wszystkimi elementami SBD
Baza danych jest magazynem danych z nałożoną na niego wewnętrzną strukturą.
RYSUNEK #1
RYSUNEK #2
System zarządzania bazą danych (Database Management System) - SZBD
•
program uruchamiany jest w pamięci wewnętrznej komputera, kontrolowany przez
system operacyjny, który działa jako interfejs między użytkownikami a bazą danych
•
zbiór bibliotek, aplikacji i narzędzi, które zwalniają programistę aplikacji z konieczności
pamiętania o szczegółach przechowywania i zarządzania danymi
•
dostarcza różnych funkcji do wyszukiwania i aktualizacji
Każda baza danych posiada:
•
źródło danych
•
użytkowników
•
związki z reprezentowaną rzeczywistością
Z pojęciem bazy danych są nierozerwalnie związane dwie cechy:
•
trwałość - dane mają być przechowywane przez pewien okres czasu, na ogól z góry
nieokreślony
•
zgodność z rzeczywistością - dane w bazie muszą stanowić wierne odzwierciedlenie
modelowanego fragmentu rzeczywistości
Każda baza danych, a także każdy SZBD muszą się stosować do zasad określonego
modelu danych.
Przy budowie bazy danych zwraca się uwagę na:
•
kontrolowanie powtarzania się (replikacji) danych
•
oparcie się na jednym spójnym systemie reprezentacji danych - model danych
•
współbieżny dostęp do bazy danych przez wielu użytkowników
•
zapewnienie ochrony danych
•
niezależność danych: dane i procesy działające na bazie danych powinny być
niezależne względem siebie
Zbiór zasad, które określają model danych:
•
definicja danych - jaka jest struktura danych
•
operowanie danymi - jak operuje się danymi
•
integralność danych - jakie stany bazy są poprawne
=======================RYSUNEK #3===========================
Rozwój systemów baz danych
•
kawałek po kawałku
•
system zintegrowany
Modelowanie baz danych
Diagramy związków encji
=======================RYSUNEK #4============================
Pojęcia = -> ODL, -> E/R
Relacje = <- ODL, <- E/R
ERD - Diagramy relacyjne danych
-
Modelowanie związków encji - podejście zstępujące do projektowania bazy danych
-
Wyodrębnianie istotnich danych - encji oraz związków pomiędzy nimi, które powinny być
reprezentowane w modelu
-
Dodanie do modelu coraz więcej szczegółów - o encjach i związkach
- Diagram związków encji - abstrakcyjny projekt bazy danych
-
ERD służą do analizy powiązań i zależności pomiędzy tabelami oraz do usuwania z tym
związanych problemów
Wykorzystuje się je głównie do:
-
analizy zależności funkcyjnych w bazie danych
-
wykrywaniu i usuwaniu problemów z redundancją (nadmiarowością) danych
-
projektowaniu struktury bazy
-
czytelnej i przejrzystej wizualizacji położenia atrybutów
-
analizy powiązań przy definiowaniu i wykorzystywaniu kluczy złożonych
Zalety diagramów związków encji
-
niezależność od systemu
-
przejrzystość
-
łatwość interpretacji
Obecnie nie istnieje standardowa notacja dla modelu ERD
-
diagramy Chena, które składają się z prostokątów reprezentujących zbiory encji, rombów
reprezentujących związki oraz odcinków, które je łączą
-
noracja
kurzej łapki
, w której podobnie jak w diagramach Chena wykorzystuje się
prostokąty do reprezentacji zbiorów encji oraz odcinki pomiędzy encjami do reprezentacji
związków: na końcach odcinków reprezentujących związki funkcyjne pojawiają się kurze
łapki, od których pochodzi nazwa notacji
-
UML (Unifield Modeling Language) - najnowszy język modelowania obiektowego
nazywanym zunifikowanym językiem modelowania
ERD - Diagramy relacyjne danych
Dziedzina koncepcyjna postrzegana jako zbiór encji oraz związków między encjami
Podstawowe elementy modelu ERD
-
encja
-
związek
-
atrybut
-
Encja - rozróżnialny obiekt wzięty z rzeczywistego świata
-
Wystąpienie encji - unikalny, rozpoznawalny obiekt ze zbioru encji
-
Zbiór encji identyfikowany jest przez nazwę i listę właściwości
-
Nazwa encji - rzeczownik w liczbie pojedynczej
-
W notacji UML - początek dużą literą
Graficzna ( :D ) prezentacja zbiorów encji Personel i Biuro
Personel <---- Nazwa encji ----> Biuro
Związki
-
Związek - zbiór powiązań pomiędzy jednym lub większą liczbą uczestniczących w
związku zbiorów encji
-
Każdemu związkowi nadaje się nazwę, która opisuje jego funkcje
-
binarne - obejmuje dwie encje
-
wielorakie - obejmuje więcej niż dwie encje
-
Związek jest na ogół opisywany tylko w jednym kierunku, co oznacza, że nazwę związku
można sensownie interpretować tylko w tym wybranym kierunku
Graficzna prezenracja związku Biuro Ma Personel
Personel ––––––––<––Ma–––––––––– Biuro
^
|
Nazwa związku
-
Encje biorące udział w danym związku nazywane są uczestnikami tego związku
-
Liczba uczestników w związku nazywana jest stopniem związku
Graficzna prezentacja potrójnego związku nazwanego Rejestruje
Personel ––––––– <Rejestruje> ––––––– Biuro
|
Klient
Graficzna prezentacja poczwórnego związku nazwanego Uzgadnia
Pracownik
|
Kupujący–––––––––<Uzgadnia>–––––– Instytucja finansowa
|
Oferta
Graficzna prezentacja opisu rekurencyjnego Kieruje z nazwami ról Kierownik i Kierowany
=========================Rysunek #5=============================
Przykład encji powiązanej ze sobą poprzez dwa różne związki
=========================Rysunek #6=============================
Atrybut
-
każda konkretna cecha zbioru encji nazywana jest atrybutem
-
atrybuty zawierają wartości, które opisują każde wystąpienie encji, i które są główną
częścią danych pamiętanych w bazie
-
związki przedstawiające powiązania pomiędzy zbiorami encji także mogą mieć atrybuty
-
każdemu atrybutowi przypisywany jest zbiór wartości nazywany dziedziną
-
dziedzina określa wszystkie potencjalne wartości, jakie może przyjmować atrybut
-
atrybuty mogą być
-
proste lub złożone
-
jednowartościowe lub wielowartościowe
-
pochodne
Graficzna prezentacja encji Personel i Biuro wraz z ich atrybutami
======================Rysunek #7===============================
/ - oznacza ze atrybut jest atrybutem pochodnym
Atrybuty powinny być atomowe (niepodzielne)
Silne i słabe zbiory encji
Zbiory encji dzieli się na silne i słabe
-
Silny zbiór encji to zbiór encji, którego istnienie nie jest zależne od innych zbiorów encji.
Możemy jednoznacznie identyfikować każdego pracownika poprzez atrybut
peacownikNr, który jest kluczem głównym zbioru encji Personel
-
Słaby zbiór encji to zbiór encji, którego istnienie zależy od innych zbiorów encji. Cechą
charakterystyczną słabego zbioru encji jest brak jednoznacznej identyfikacji każdego
wystąpienia encji za pomocą atrybutów przypisanych wyłącznie temu zbiorowi encji.
Silny zbiór encji klient i słaby zbiór encji Preferencje
=========================Rysunek #8============================
Przykład związku Ogłasza z atrybutami dataOgłoszenia i koszt
=========================Rysunek #9============================
Krotność wzajemnie jednoznacznego związku 1:1 Personel Zarządza Biuro
[ Pobierz całość w formacie PDF ]