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
…
…
…
…