1
TEORIA BAZ DANYCH
•Baza danych - zintegrowana grupa ogólnie dostępnych zbiorów danych. Podstawową formą
organizacji danych w bazie jest relacja (tabela).
•SZBD (Systemy zarządzania bazami danych) to pakiety programowe słuŜące do
zarządzania danymi. Podstawowymi elementami tych systemów są:
• język manipulacji danymi
• język definicji danych
• język zapytań (SQL)
• generator raportów
•SZBD umoŜliwiają oddzielenie aplikacji od bazy.
Typy baz danych
•operacyjne bazy danych – znajdują zastosowanie w codziennym funkcjonowaniu
organizacji, instytucji i firm. Baza taka przechowuje dane dynamiczne, czyli takie, które
ulegają ciągłym zmianom i odzwierciedlają aktualny stan obiektu.
•analityczne bazy danych – wykorzystywane są do przechowywania danych historycznych i
informacji związanych z pewnymi wydarzeniami. Przechowywane tutaj dane są statyczne,
bardzo rzadko ulegają zmianom i zawsze odzwierciedlają stan obiektów z pewnego
ustalonego momentu.
•Cele systemów z bazą danych:
• elastyczny dostęp do danych (język SQL),
• integralność danych (prawidłowe, spójne i aktualne)
• bezpieczeństwo danych (Ochrona danych prze nieupowaŜnionym dostępem i
przypadkowym uszkodzeniem)
• obniŜenie redundancji (Informacja powinna być przechowywana tylko w jednym
miejscu w bazie)
• niezaleŜność danych od aplikacji (Fizyczna i logiczna organizacja danych jest
oddzielona od aplikacji)
• współdzielenie danych (UmoŜliwienie róŜnym uŜytkownikom korzystania z tych
samych danych)
• standaryzacja opisu (Jednolite definicje danych dotyczące ich nazw i formatu, tzw.
słowniki danych)
•Relacyjny model danych jest obecnie najbardziej popularnym modelem uŜywanym w
systemach baz danych. Podstawą tego modelu stała się praca opublikowana przez E.F. Codda
w latach ’70 ubiegłego wieku. ZauwaŜył on, Ŝe zastosowanie struktur i procesów
matematycznych w zarządzaniu danymi mogłoby rozwiązać wiele problemów trapiących
ówczesne modele. W swej pracy „Relacyjny model logiczny dla duŜych banków danych”
Codd zaprezentował załoŜenia relacyjnego modelu baz danych, model ten oparł na teorii
mnogości i rachunku predykatów pierwszego rzędu.
Podstawowe pojęcia
•W modelu relacyjnym pojedynczy zbiór danych (tabelę) nazywamy relacją, rekord
(wiersz) – krotką, a kolumnę – atrybutem. Całość przypomina arkusz kalkulacyjny.
2
Związek (Relacja w MS Access)
•Związek pomiędzy parą tabel istnieje wtedy, gdy dwie tabele są połączone przez klucz
podstawowy i klucz obcy. KaŜdy związek jest opisywana przez typ związku istniejący między
dwoma tabelami, typ uczestnictwa, jaki obie tabele mają w związku oraz stopień uczestnictwa
tych tabel.
Typy związku
•jeden-do-jednego (jeŜeli pojedynczemu rekordowi z pierwszej tabeli przyporządkowany jest
najwyŜej jeden rekord z drugiej tabeli i na odwrót),
•jeden-do-wielu (jeŜeli pojedynczemu rekordowi z pierwszej tabeli moŜe odpowiadać jeden
lub więcej rekordów z drugiej, ale pojedynczemu rekordowi z drugiej tabeli odpowiada
najwyŜej jeden rekord z tabeli pierwszej),
•wiele-do-wielu (jeŜeli pojedynczemu rekordowi z pierwszej tabeli moŜe odpowiadać jeden
lub więcej rekordów z drugiej i na odwrót).
Teoria postaci normalnych
Relacja jest w pierwszej postaci normalnej, jeśli kaŜda wartość atrybutu w kaŜdej krotce tej
relacji jest wartością elementarną, czyli nierozkładalną.
lub
Relacja jest w pierwszej postaci normalnej, jeśli nie ma powtarzających się grup.
Zamówienia
Nr
zamó
wienia
Data
Nazwa
dostawcy
Adres
NIP
Nazwa towaru
Symbol
PKWiU
Ilość
Cena
22/04
01-07-
2004
E-Komp
Kraków
Piłsudzkiego
525-01-52-
234
Komputer 3,0 GHz
8822
5
2500
22/04
01-07-
2004
E-Komp
Kraków
Piłsudzkiego
525-01-52-
234
Monitor LG 17”
2712
5
900
22/04
01-07-
2004
E-Komp
Kraków
Piłsudzkiego
525-01-52-
234
Drukarka HP LJ
18442
2
1500
23/04
11-07-
2004
M-Soft
Przemyśl
Dworskiego
679-28-02-
229
Windows XP
7985
5
600
23/04
11-07-
2004
M-Soft
Przemyśl
Dworskiego
679-28-02-
229
MS Excel
7983
3
900
ZaleŜność funkcyjna
Podczas projektowania schematu bazy danych podstawowym pojęciem jest zaleŜność danych.
Klucz
Kluczem relacji nazywamy taki zbiór atrybutów tej relacji, których kombinacje wartości
jednoznacznie identyfikują kaŜdą krotkę tej relacji a Ŝaden podzbiór tego zbioru nie posiada
tej własności. W kluczu nie moŜe zawierać się wartość Null.
WyróŜniamy klucze proste i złoŜone. Klucz jest kluczem prostym, jeŜeli powyŜej opisany
zbiór jest jednoelementowy - w przeciwnym razie mówimy o kluczu złoŜonym. W ogólności,
w relacji moŜna wyróŜnić wiele kluczy, które nazywamy kluczami potencjalnymi. Wybrany
klucz spośród kluczy potencjalnych nazywamy kluczem głównym.
3
Klucz sztuczny
Klucz stworzony wyłącznie dla potrzeb relacji w celu zastąpienia złoŜonego klucza
głównego.
Zamówienia
(nadal I postać normalna – klucz sztuczny)
Nr zamó-
wienia
Data
ID
dostawcy
Nazwa
dostawcy
Adres
NIP
22/04
01-07-
2004
01
E-Komp
Kraków
Piłsudzkiego
525-01-52-234
22/04
01-07-
2004
01
E-Komp
Kraków
Piłsudzkiego
525-01-52-234
22/04
01-07-
2004
01
E-Komp
Kraków
Piłsudzkiego
525-01-52-234
23/04
11-07-
2004
02
M-Soft
Przemyśl
Dworskiego
679-28-02-229
23/04
11-07-
2004
02
M-Soft
Przemyśl
Dworskiego
679-28-02-229
Szczegóły zamówień
(klucz sztuczny)
Nr
zamó
wienia
ID towaru Nazwa towaru
Symbol
PKWiU
Ilość
Cena
22/04
11
Komputer 3,0 GHz
8822
5
2500
22/04
12
Monitor LG 17”
2712
5
900
22/04
13
Drukarka HP LJ
18442
2
1500
23/04
21
Windows XP
7985
5
600
23/04
22
MS Excel
7983
3
900
Relacja jest w drugiej postaci normalnej, jeśli kaŜdy atrybut tej relacji nie wchodzący w
skład Ŝadnego klucza potencjalnego jest w pełni funkcyjnie zaleŜny wyłącznie od wszystkich
podrelacji kluczy.
Zamówienia
Nr zamó-
wienia
Data
ID
dostawcy
Nazwa
dostawcy
Adres
NIP
22/04
01-07-2004 01
E-Komp
Kraków
Piłsudzkiego
525-01-52-234
23/04
11-07-2004 02
M-Soft
Przemyśl
Dworskiego
679-28-02-229
Szczegóły zamówień
Nr
zamó
wienia
ID towaru Ilość
22/04
11
5
22/04
12
5
22/04
13
2
23/04
21
5
23/04
22
3
4
Towary
ID towaru Nazwa towaru
Symbol
PKWiU
Cena
11
Komputer 3,0 GHz
8822
2500
12
Monitor LG 17”
2712
900
13
Drukarka HP LJ
18442
1500
21
Windows XP
7985
600
22
MS Excel
7983
900
Relacja jest w trzeciej postaci normalnej, jeŜeli jest w drugiej postaci normalnej i kaŜdy jej
atrybut nie wchodzący w skład Ŝadnego klucza potencjalnego nie jest przechodnio
funkcjonalnie zaleŜny od Ŝadnego klucza potencjalnego tej relacji.
Zamówienia
Nr zamó-
wienia
Data
ID dostawcy
22/04
01-07-2004
01
23/04
11-07-2004
02
Szczegóły zamówień
Nr zamó-
wienia
ID towaru Ilość
22/04
11
5
22/04
12
5
22/04
13
2
23/04
21
5
23/04
22
3
Towary
ID towaru Nazwa towaru
Symbol
PKWiU
Cena
11
Komputer 3,0 GHz
8822
2500
12
Monitor LG 17”
2712
900
13
Drukarka HP LJ
18442
1500
21
Windows XP
7985
600
22
MS Excel
7983
900
Dostawcy
ID
dostawcy
Nazwa
dostawcy
Adres
NIP
01
E-Komp
Kraków
Piłsudzkiego
525-01-52-
234
02
M-Soft
Przemyśl
Dworskiego
679-28-02-
229
5
Przysięga normalizacji
Bez powtórzeń
Pola zaleŜą od klucza
Cały klucz
I tylko klucz
Tak mi dopomóŜ Codd.
6
ZaleŜności wielowartościowe
Języki
ID pra
cownika
Nazwisko
Imię
Język
programowania
Język obcy
34
Kowalczyk
Zbigniew C#
angielski
34
Kowalczyk
Zbigniew C#
niemiecki
12
Janowski
Jan
C++
angielski
5
Malinowski
Antoni
Fortran
angielski
5
Malinowski
Antoni
C++
angielski
5
Malinowski
Antoni
Fortran
francuski
5
Malinowski
Antoni
C++
francuski
…
…
…
…
…
Umieszczenie w bazie danych Języki informacji o znajomości języka programowania C# i
języka obcego niemieckiego przez Malinowskiego wymagałoby dopisania aŜ sześciu
rekordów.
Relacja jest w czwartej formie normalnej wtedy i tylko wtedy, gdy jest w trzeciej postaci
normalnej i nie zawiera wielowartościowej zaleŜności atrybutów.
Pracownicy
ID pra
cownika
Nazwisko
Imię
34
Kowalczyk
Zbigniew
12
Janowski
Jan
5
Malinowski
Antoni
…
…
…
Języki programowania
Języki obce
ID pra
cownika
Język
programowania
ID pra
cownika
Język obcy
34
C#
34
angielski
12
C++
34
niemiecki
5
Fortran
12
angielski
5
C++
5
angielski
…
…
5
francuski
…
…
…
…