BAZY DANYCH
Dr inż. Wikarek Jarosław
Katedra Systemów Sterowania i Zarządzania
E-MAIL: j.wikarek@tu.kielce.pl
1
Projektowanie baz danych
W procesie projektowania relacyjnych baz danych chodzi o utworzenie
schematów o takiej postaci, aby żaden ze schematów nie był zbędny,
jak również wydzielenie oddzielnych związków (zależności) między
atrybutami w oddzielne relacje.
Bazy danych
Metody
projektowania
struktury
logicznej
relacyjnych baz danych:
Analityczna
2
Analityczna
Polega na dekompozycji wstępnie przyjętej struktury relacji
(tworzeniu zestawu schematów relacyjnych).
Syntetyczna
Zapewnia uzyskanie trzeciej postaci normalnej na drodze syntezy
schematów relacji w zadanych zależności funkcjonalnych bez
przyjmowania początkowej struktury relacji.
Bazy danych
Dlaczego jest to ważne
W źle zaprojektowanej bazie danych występują:
Redundancja – nadmiarowość danych
3
Redundancja – nadmiarowość danych
Niespójność danych – zwana często anomaliami aktualizacyjnymi.
Wyróżniamy anomalie aktualizacyjne przy:
Modyfikacji danych
Usuwaniu danych
Wstawianiu danych
Bazy danych
Przykład
4
Bazy danych
Normalizacja – analityczne projektowanie bazy
Pierwsza postać normalna
Relacja jest w pierwszej postaci normalnej, jeśli każda
wartość atrybutu w każdej krotce tej relacji jest wartością
5
wartość atrybutu w każdej krotce tej relacji jest wartością
elementarną, czyli nierozkładalną.
Z definicji pierwszej postaci normalnej wynika, że każdemu
elementowi relacji znajdującemu się na przecięciu dowolnej
krotki i dowolnego atrybutu odpowiada pojedyncza wartość, a
nie zbiór wartości.
Pierwsza postać normalna jest immanentną cechą każdej
relacji, gdyż wymagania tej postaci są zawarte w definicji
relacji.
Bazy danych
Normalizacja – analityczne projektowanie bazy
6
Bazy danych
Przykład – pierwsza postać normalna
7
Bazy danych
Normalizacja
Druga postać normalna
Dana relacja jest w drugiej postaci normalnej, jeśli każdy
atrybut tej relacji nie wchodzący w skład żadnego klucza
8
atrybut tej relacji nie wchodzący w skład żadnego klucza
potencjalnego tej relacji jest w pełni funkcjonalnie zależny od
wszystkich kluczy potencjalnych.
Innymi słowy, przy przeprowadzaniu relacji do drugiej postaci
normalnej
chodzi
o
usunięcie
niepełnej
zależności
funkcjonalnej (tj. atrybutów zależnych od części klucza).
Bazy danych
Normalizacja
9
Bazy danych
Przykład – druga postać normalna
10
Bazy danych
Normalizacja
Trzecia postać normalna
Dana relacja jest w trzeciej postaci normalnej, jeśli jest
ona w drugiej postaci normalnej i każdy jej atrybut nie
11
ona w drugiej postaci normalnej i każdy jej atrybut nie
wchodzący w skład żadnego klucza potencjalnego nie jest
przechodnie
funkcjonalnie
zależny
od
żadnego
klucza
potencjalnego tej relacji.
Innymi słowy, przy przeprowadzaniu relacji do trzeciej postaci
normalnej
chodzi
o
usunięcie
przechodnich
zależności
funkcjonalnych (atrybutów zależnych od innych niż klucz
relacji).
Bazy danych
Normalizacja
12
Bazy danych
Przykład – trzecia postać normalna
13
Bazy danych
Przykład – trzecia postać normalna
14
Bazy danych
Przykład – trzecia postać normalna
15
Bazy danych
Przykład – trzecia postać normalna
16
Bazy danych
Przykład – trzecia postać normalna
17
Bazy danych
Przykład – trzecia postać normalna
18
Bazy danych
Normalizacja – czwarta postać normalna
19
Bazy danych
Przykład – czwarta postać normalna
20
Bazy danych
Normalizacja – piąta postać normalna
21