BAZY DANYCH Streszczenie z wykładów


Bazy danych
Danymi określamy informacje określonego typu i o określonej strukturze.
Typ(informacji) danych przewidzianych do przetwarzania:
1. Typ numeryczny (liczby calkowite, rzeczywiste)
2. Typ alfanumeryczny (znaki, lańcuchy)
3. Typ daty/czasu
4. Typ logiczny
5. Typ multimedialny (uniwersalny) (grafika,dzwięk)
Struktury danych:
- (atrybut) pojedyńcza zmienna, pole - nazwa,typ
- (krotka) rekord
- (relacja) tabela
- baza danych
- hurtownia danych
Baza danych to zgromadzone dane wraz z systemem zarządzania tymi danymi.
System Zarządzania Bazą Danych (wlaściwości):
- Tworzenie struktur bazodanowych
- Dopisywanie, aktualizacje, edycje
- Zapytania, wybory, selekcje
- Raporty i zestawienia
- Administrowanie bazą danych
Fitzgerald Codd (1969-1990) - twórca idei relacji
Pierwsza postać normalna - w polu powinien być pojedyńczy wpis.
Druga postać normalna - buduje się tabele tematyczne związane z kluczem glównym tabeli.
W trakcie projektowania bazy występują klucze potencjalne.
TAB 1 TAB 2
Klucz Klucz
główny obcy
Integralność danych - spójność tabel.
Redundancja daych - powtarzanie wpisywania danych.
2
Relacja - jest podzbiorem iloczynu kartezjańskiego dziedzin.
D1*D2*...*Dn
n-tki (d1,d2,...,dn)
d1"D1, d2"D2,... dn"Dn
D1={a,b,c}
D2={x,y}
D1*D2={(a,x),(a,y),(b,x),(b,y),(c,x),(c,y)}
R1={(a,x),(b,x),(c,x)}
R2={(a,x),(b,y),(c,y)}
Operacje relacyjne:
- projekcji
- selekcji GAÓWNE OPERACJE
- polączenia
- suma relacji
- różnica
- iloczyn kartezjański
- przecięcie
Relacyjna baza danych jest to baza danych, w której zależności między danymi opisane są w
postaci relacji. Relację można przedstawić jako tablicę , każdy wiersz tablicy można
interpretować jako krotkę relacji. Kolumnom tablicy można nadawać nazwy, które są
atrybutami relacji. Zbiór atrybutów nazywamy schematem relacji.
Relacja (xxx,yyy,zzz)
PRACOWNICY(Imie,Nazwisko,Wiek)
nazwa relacji atrybuty relacji
Relacja o czytelnikach z biblioteki:
BIBL(nr,nazwisko,adres,książka,data)
nr nazwisko adres książka data
1 Kowalski Zielona 5 IBM 05.06.97
2 Nowak Polna 2 DELPHI 08.10.97
1 Kowalski Zielona 5 MS-DOS 08.11.97
Ta baza stwarza problemy:
- redundancji: pewne informacje się powtarzają;
- anomalie przy aktualizacji (niespójność bazy danych);
- anomalie przy usuwaniu - w przypadku likwidacji informacji o książkach sprzed danej daty,
można stracić dane o klientach
- anomalie przy wstawianiu - nie można wpisać adresu jeżeli książka nie jest wypożyczona
3
Bazę, aby uniknąć tych problemów trzeba zapisać w sposób następujący:
CZYTELNIK(nr,nazwisko,adres)
KSIŻKI(nr,książka,data)
Tablica 1
nr nazwisko adres
1 Kowalski Zielona 5
2 Nowak Polna 2
Tablica 2
nr książka data
1 IBM 05.06.97
1 MS-DOS 08.11.97
2 DELPHI 08.10.97
Pierwsza postać normalna wymaga jedynie, aby dziedziną atrybutów byly wartości
elementarne (nierozkladalne).
Relacja przed przeksztalceniem MIESZKACCY(nazwisko,adres)
Nazwisko Adres
Marcin Kowal 42-200 Częstochowa ul. Skrzetuskiego 10 m 2
Edyta Mlot 42-200 Częstochowa ul. Nila 2a m. 10
Relacja po przeksztalceniu do pierwszej postaci normalnej:
MIESZKACCY(nazwisko,imię,kod,miasto,ulica,nr_domu,nr_lokalu)
nazwisko imię kod miasto ulica nr_domu nr_lokalu
Kowal Marcin 42-200 Częstochowa Skrzetuskiego 10 2
Mlot Edyta 42-200 Częstochowa Nila 2a 10
Zależności funkcyjne
Jeżeli schemat relacji oznaczymy:
R(A1,...,An)
X,Y - podzbiory relacji
x"{A1,...,An}
y"{A1,...,An}
X-->Y
Zbiór X określa funkcyjnie zbiór Y. Jeżeli nie jest możliwe, aby relacja R zawierala dwie
krotki mające skladowe zgodne tzn. identyczne dla wszystkich atrybutów ze zbioru X i
jednocześnie conajmniej jedną niezgodną skladową dla atrybutów zbioru Y. Gdzie X-->Y to
zależność funkcyjna podana poniżej pomiędzy X i Y nie występuje:
X Y
a,b,c e,f
a,b,c x,f
*) nr --> nazwisko,adres
4
Reguły Armstronga reguly pozwalające na sformulowanie wszystkich zależności
funkcyjnych na podstawie pewnego zbioru zależności.
Reguła I - zbiór atrybutów określa dowolny jego podzbiór np. jeżeli zbiorem atrybutów jest
(nr,nazwisko) to:
nr,nazwisko --> nr
nr,nazwisko --> nazwisko
Reguła II - jeżeli zbiór atrybutów X, funkcyjnie określa zbiór atrybutów Y (X-->Y) i Z jest
innym zbiorem atrybutów, wówczas suma suma zbiorów X i Z funkcyjnie określa sumy Y i
Z.
X-->Y==>X*"Z-->Y*"Z
*) Jeżeli zachodzi zależność nr --> książka,
to zachodzi również zależność nr,data --> książka,data
Reguła III - jeżeli X-->Y i Y-->Z to X-->Z
X-->Y i X-->Z to X-->Y*"Z
X-->A to X-->A1 ... X-->An
Bardzo często trzeba się przekonać, które pojedyńcze atrybuty są funkcyjnie zależne od
danego zbioru atrybutów X. Algorytm wykorzystywany do tego celu nazywa się algorytmem
X-domkniętości.
ALGORYTM X-DOMKNITOŚCI
Krok 1
X(0)=X, N=0
Krok 2
Jeżeli A-->B oraz A"X(N) i B "X(N) wówczas X(N+1)=X(N)*"B w przeciwnym razie
kończy wykonywanie algorytmu.
Krok 3
N=N+1 i przejdz do Kroku 2
*) NALEŻNOŚCI(nazwisko,ulica,miasto,województwo,data,wielkość) z zależnościami
funkcyjnymi:
- A-->B
- nazwisko-->ulica,miasto,województwo
- nazwisko,data-->wielkość
- miasto-->województwo
X=nazwisko,data
X{0}={nazwisko,data}
X{1}={nazwisko,data,ulica,miasto,województwo}
X{2}={nazwisko,data,ulica,miasto,województwo,wielkość}
X{3}=X{2}
5
Kluczem dla danej relacji R jest zbiór atrybutów X taki, że:
1) Funkcyjnie określa wszystkie atrybuty relacji R
2) Żaden wlaściwy podzbiór X nie posiada tej wlasności
Zbiór atrybutów, który zawiera klucz, jest nazywany nadkluczem.
*) MAGAZYN(nr,mistrz,wydzial,material,ilość,cena)
nr-->mistrz Klucz relacji
mistrz-->wydzial ą={nr,material}=X(0)
mistrz,material-->ilość
material-->cena
X{0}={nr,material}
X{1}={nr,material,mistrz}
X{2}={nr,material,mistrz,wydzial}
X{3}={nr,material,mistrz,wydzial,ilość}
X{4}={nr,material,mistrz,wydzial,ilość,cena}
Postać normalna Boyce'a - jest najsilniejszą ze wszystkich znanych postaci normalnych dla
zależności niewielowartościowych.
Relacja Boyce'a - jeżeli dla każdej zależności, X określa funkcyjnie Y(x-->Y) i Y nie zawiera
się w X (Y "X), to zbiór X zawiera klucz (tzn. jest nadkluczem). Relacja, która jest w postaci
normalnej Boyce'a nie zawiera redundancji, niezgodności i anomalii. Relację, która nie jest w
postaci normalnej Boyce'a, można przeksztalcić do tej postaci, dokonując tzw. rozlożenia
schematu relacji.
Projekcja relacji - przypuśćmy, że A jest podzbiorem zbioru atrybutów X, względem
którego dokonujemy projekcji. Projekcja relacji R względem podzbioru A jest relacją, do
której wchodzą tylko wartości atrybutów należące do zbioru A.
*) BIBL(nr,nazwisko,ulica,książka,data)
nr nazwisko ulica książka data
45 Kowalski Lipowa C++ 97.12.14
67 Mostowski Krótka DELPHI 97.12.15
78 Lipski Mokra DOS 97.12.16
78 Lipski Mokra IBM 97.12.20
45 Kowalski Lipowa PASCAL 97.12.28
Dokonując projekci względem zbioru atrybutów (nazwisko,ulica) otrzymujemy następujące
krotki:
nazwisko ulica
Kowalski Lipowa
Mostowski Krótka
Lipski Mokra
6
*) Przeksztalcenie schematu relacji do postaci normalnej Boyce'a
NALEŻNOŚCI(nazwisko,ulica,miasto,województwo,data,wielkość)
nazwisko-->ulica,miasto,województwo
nazwisko,data-->wielkość
miasto-->województwo
Relacja ta nie jest w postaci normalnej Boyce'a, ponieważ atrybuty:
ulica,miasto,województwo są zależne tylko od atrybutu nazwisko.
Dokonując projekcji na dwa schematy otrzymujemy:
R1(nazwisko,ulica,miasto,województwo)
R2(nazwisko,data,wielkość)
W dalszym ciągu relacje te nie są w postaci normalnej Boyce', ponieważ atrybut miasto nie
jest kluczem, a zachodzi zależność funkcyjna miasto-->województwo
Dokonując projekcji relacji R1 na R3 i R4:
R3(nazwisko,ulica,miasto)
R4(miasto,województwo)
otrzymujemy trzy relacje w postaci normalnej Boyce'a
Uogólniając, można stwierdzić, że jeżeli dla danej relacji istnieje zależność funkcyjna X-->Y,
gdzie X nie jest nadkluczem, to należy daną relację rozlożyć (czyli dokonać dwóch projekcji)
tak, aby pierwsza projekcja zawierala atrybuty X,Y, a druga Z,X, gdzie Z jest zbiorem
atrybutów relacji pierwotnej, wylączając atrybuty ze zbiorów X,Y. Po rozlożeniu relacja o
schemacie (X,Y) ma inny klucz (kluczem dla tej relacji jest po prostu X), co oznacza, że jest
ona w postaci normalnej Boyce'a. W teorii poświęconej relacyjnym bazom danych udowadnia
się, że jeżeli dokonujemy schematu relacji o schemacie (X,Y,Z) na dwie re;lacje o atrybutach
X,Y i X,Z, gdzie X zawiera klucz dla każdej projekcji, to dokonuje się tzw. naturalnego
zlączenia, otrzymamy relację pierwotną. Naturalne zlączenie dwóch relacji zilustrowano
poniżej:
*)
R1(nr,nazwisko)
R2(nr,książka)
powstanie
R3(nr,nazwisko,książka)
System bazy danych - baza i system zarządzania danymi, umożliwia dostęp i modyfikację
baz danych.


Wyszukiwarka

Podobne podstrony:
Bazy Danych (SQL) wykład ROBERT CHWASTEK
22 Bazy danych – wykład wstępnyid)482
bazy danych wyklad3
Wykład 11 Recovery – Transakcyjne odtwarzanie bazy danych po awarii
Bazy Danych wykład (digit)
bazy danych wyklad1
Strona polecenia do bazy danych
2004 11 Porównanie serwerów relacyjnych baz danych Open Source [Bazy Danych]
MySQL Mechanizmy wewnętrzne bazy danych

więcej podobnych podstron