Bazy danych w04 07

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Relacyjny model danych

normalizacja w bazie danych

Wykład 4

23.10.2007

Antoni Dydejczyk

http://www.ftj.agh.edu.pl/~antek

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Plan wyk

Plan wyk

ł

ł

adu

adu

Reguły Codda

Anomalie w bazach danych

Zależności funkcyjne w bazie

Postacie normalne

Pierwsza 1NF

Druga 2NF

Trzecia 3NF

Postać normalna BNCF

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Motto:

„Większa część procesu projektowania baz danych może być określona jako sztuka, nie zaś
jako proces naukowy. Operacja ta jest nadal narażona na subiektywizm oceny, który
oczywi
ście nie ma wiele wspólnego z nauką. W procesie projektowania baz danych występuje
jednak element naukowy – normalizacja – lecz w 90% na proces ten wpływ ma po prostu
przeczucie.

Rozważając normalizację, możemy zadać samym sobie pytanie: „jaki jest ostateczny nasz
cel?”. Oczywi
ście, przede wszystkim chodzi o pozbycie się nadmiarowości danych, lecz aby
dokładnie rozpatrzy
ć to pytanie, musielibyśmy posiadać dokładną definicję nadmiarowości
danych. Bez takiej precyzyjnej definicji nie mo
żna oczekiwać od normalizacji usunięcia
wszystkich przypadków nadmiarowo
ści.

Normalizacja – ma tutaj na myśli normalizację do granic określonych definicją – jest w stanie
natomiast sprowadzi
ć bazę danych do takiej postaci, w której nie pozostaną już żadne
anomalie, mo
żliwe do usunięcia za pomocą projekcji. Jak zatem widać, nikt nie obiecuje
usuni
ęcia wszystkich możliwych anomalii, które można usunąć za pomocą projekcji tabel.
Zatem wyst
ąpienie w bazie danych nadmiarowości, których nie można wyeliminować za
pomoc
ą samej normalizacji, jest możliwe. Normalizacja jest zaledwie niewielkim elementem
nauki, lecz jest wystarczaj
ąco dobrym narzędziem do realizacji postawionych przed nią
celów.”

Chris Date

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Reguła 0. Każdy system, który jest nazywany relacyjnym systemem zarządzania
baz
ą danych, musi obsługiwać dane wyłącznie za pomocą mechanizmów
relacyjnych.

Reguła 1. Wszelkie informacje, zapisane w relacyjnej bazie danych, są
reprezentowane wyłącznie na poziomie logicznym i w jednolity sposób – jako
warto
ści w tabelach.

Reguła 2. Każda jednostka informacji (wartość atomowa) w relacyjnej bazie
danych musi by
ć dostępna w sposób logiczny, poprzez odwołanie realizowane za
pomoc
ą kombinacji nazwy tablicy, wartości klucza głównego oraz nazwy
kolumny.

Reguła 3. Wartości puste (które nie są pustymi napisami, napisami składającymi
si
ę z białych znaków bądź wartością zero lub jakąkolwiek inną liczbą) są
reprezentowane w relacyjnym systemie zarządzania bazą danych jako brak
informacji. Reprezentacja ta musi by
ć w pełni systematyczna, niezależna od typu
danych.

Regu

Regu

ł

ł

y

y

Codda

Codda

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Reguła 4. Opis bazy danych jest reprezentowany na poziomie logicznym tak jak
zwykłe dane, aby autoryzowani u
żytkownicy mogli w celu zarządzania bazą
danych wykorzystać ten sam język obsługi zwykłych danych.

Reguła 5. Relacyjny system może wykorzystywać kilka języków, używanych do
realizacji ró
żnych zadań lub trybów pracy (na przykład tryb wypełniania pól).
Jednak
że musi istnieć przynajmniej język,którego polecenia są zdefiniowane w
postaci czytelnej składni, jako ła
ńcuchy znaków (polecenia opisowe). Język ten
powinien realizowa
ć wszystkie następujące funkcje:
- definiowanie danych,
- definiowanie perspektyw,
- przetwarzanie danych (interaktywne i programowe),
- definiowanie reguł integralno
ści danych,
- autoryzacja,
- okre
ślenie początku transakcji, potwierdzenie i wycofanie transakcji.

Reguła 6. Wszystkie perspektywy które teoretycznie mogą być aktualizowane,
powinny by
ć modyfikowalne z poziomu systemu.

Regu

Regu

ł

ł

y

y

Codda

Codda

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Reguła 7. Możliwość obsługi relacji podstawowej lub wynikowej w ramach
pojedynczej operacji powinna by
ć dostępna nie tylko przy pobieraniu danych,
lecz równie
ż przy ich wprowadzaniu, modyfikacji i usuwaniu.

Reguła 8. Aplikacje oraz operacje terminalowe pozostają logicznie bez zmian w
przypadku modyfikacji, dokonanych w mechanizmie przechowywania danych lub
metodach dost
ępu do danych.

Reguła 9. Aplikacje oraz operacje terminalowe pozostają logicznie bez zmian w
przypadku dokonania jakichkolwiek modyfikacji (które nie powoduj
ą utraty
danych i teoretycznie pozwalaj
ą na zachowanie takiej logicznej niezmienności)
w tabelach podstawowych.

Reguła 10. Reguły integralności, specyficzne dla danej bazy danych, muszą być
definiowane w wybranym języku bazy danych i zapisane w katalogu
systemowym, nie za
ś w aplikacjach klienckich.

Regu

Regu

ł

ł

y

y

Codda

Codda

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Reguła 11. Relacyjny system zarządzania bazą danych charakteryzuje się
niezależnością dystrybucyjną.

Reguła 12. Jeśli system relacyjny posiada język, działający na niższym poziomie
abstrakcyjnym (tzn. przetwarzaj
ący dane na poziomie indywidualnych
rekordów), nie mo
że istnieć możliwość wykorzystania tego języka w celu
omini
ęcia reguł integralności zdefiniowanych w języku wyższego poziomu
(przetwarzaj
ącym dane na poziomie grup rekordów).

Regu

Regu

ł

ł

y

y

Codda

Codda

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Anomalie w bazach danych

Anomalie w bazach danych

Redundancja

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Davies T

234

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Davies T

234

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TpOcen

Ocen

NazS

NrStud

NazPrac

NrPr

NazwaModułu

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Anomalie w bazach danych

Anomalie w bazach danych

Usuwamy studenta „34668”

Efekt

uboczny

usunięcia

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Davies T

234

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Davies T

234

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TpOcen

Ocen

NazS

NrStud

NazPrac

NrPr

NazwaModułu

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Anomalie w bazach danych

Anomalie w bazach danych

Zmieniamy wykładowcę „systemów

relacyjnych baz danych” na Jones S

Efekt

uboczny

modyfikacji

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Davies T

234

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Davies T

234

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TpOcen

Ocen

NazS

NrStud

NazPrac

NrPr

NazwaModułu

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Anomalie w bazach danych

Anomalie w bazach danych

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Davies T

234

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Davies T

234

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TpOcen

Ocen

NazS

NrStud

NazPrac

NrPr

NazwaModułu

Wpisujemy nowego studenta „38989”

Efekt

uboczny

wstawienia

Wpisujemy nowy przedmiot

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Zale

Zale

ż

ż

no

no

ś

ś

ci funkcyjne

ci funkcyjne

Definicja zależności funkcyjnej ( FD – functional dependence )

Jeżeli R będzie relacją, X i Y zaś dowolnymi podzbiorami zbioru atrybutów R.
Mówimy,
że Y jest funkcyjnie zależny od X

X

Y

wtedy i tylko wtedy, gdy każda wartość X z R jest stowarzyszona z dokładnie
jedn
ą wartością Y z relacji Y („X funkcjonalnie określa Y”).

Lewa strona FD nazywana jest niekiedy elementem determinującym, prawa zaś

elementem determinowanym.

Zachodzą związki:

1.

Zwrotność : Jeżeli B jest podzbiorem A, to A

B.

2.

Dołączenie : Jeżeli A

B, to AC BC.

3.

Przechodniość : Jeżeli A

B i B C, to A C.

4.

Samookreślenie : A

A.

5.

Rozkład : Jeżeli A

BC, to A B i A C.

6.

Suma : Jeżeli A

B i A C, to A BC.

7.

Złożenie : Jeżeli A

B i C D, to AC BD.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Właściwym sposobem eliminowania anomalii w bazach danych jest

dekompozycja relacji. Sprowadza się on do podziału atrybutów relacji R
między dwa schematy nowych relacji. Reguła dekompozycji obejmuje
również podział krotek relacji wejściowej R między nowe relacje, dzięki
operacji rzutowania krotek R.

Zadaniem dekompozycji jest zastąpienie relacji równoważnym jej

zbiorem relacji, których struktura uniemożliwia wystąpienie anomalii.
Proces dekompozycji nazywamy normalizacją bazy danych.

W ramach normalizacji bazy danych wyróżniamy następujące poziomy
normalizacji:

relacje w pierwszej postaci normalnej – 1NF
relacje w drugiej postaci normalnej – 2NF
relacje w trzeciej postaci normalnej – 3NF
relacje w postaci normalnej Boyce’a – Codd’a – BCNF

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Cechy dekompozycji:

Własność bezstratnego złączenia, zapewnia, że każdy stan

oryginalnej relacji może być odtworzony z odpowiednich
stanów mniejszych relacji.

Własność zachowania zależności, gwarantuje, że więzy na

oryginalnej relacji mogą być utrzymane przez proste
wymuszenie pewnych wi
ęzów na każdej z mniejszych relacji.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Wszystkie relacje (znormalizowane i nieznormalizowane)

Relacje w 1NF

Relacje w 2NF

Relacje w 3NF

Relacje w postaci BCNF

Relacje w 4NF

Relacje w 5NF

Każda wyższa postać normalna musi spełniać kryteria wszystkich postaci
niższych.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Pierwsza posta

Pierwsza posta

ć

ć

normalna 1NF

normalna 1NF

Relacja spełnia założenia pierwszej postaci normalnej, wtedy i tylko wtedy,
gdy wszystkie wyj
ściowe dziedziny zawierają wyłącznie wartości skalarne
(niepodzielne).

Relacja jest w pierwszej postaci normalnej (1NF) wtedy i tylko wtedy, gdy
ka
żdy atrybut niekluczowy jest funkcyjnie zależny od klucza głównego.

Gdyby wszystkie bazy danych spełniały pierwszą postać normalną, to
relacje typu jeden-do-wiele byłyby określane zawsze pomiędzy kilkoma
relacjami (nigdy w obrębie jednej relacji), a relacja typu jeden-do-jeden
mogłaby się zawierać w jednej relacji.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Pierwsza posta

Pierwsza posta

ć

ć

normalna 1NF

normalna 1NF

-

-

przyk

przyk

ł

ł

ad

ad

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Davies T

234

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Davies T

234

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Davies T

234

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TypOcen

Ocena

NazwS

NrStud

NazwPr

NrPr

NazwaModułu

Moduły (NazwaModułu, NrPr, NazwPr, NrStud, NazwS, Ocena, TypOcen)

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

egz

A1

Smith J

34668

Evans R

345

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

cwk1

B2

Smith S

34698

Davies T

234

Projekt. relacyjnych baz danych

cwk2

B1

cwk1

B1

Patel P

34888

Davies T

234

cwk1

B2

Jones S

37798

Davies T

234

cwk2

B1

cwk1

B3

Smith S

34698

Davies T

234

Systemy relacyjnych baz danych

TypOcen

Ocena

NazwS

NrStud

NazwPr

NrPr

NazwaModułu

Moduły (NazwaModułu, NrPr, NazwPr, NrStud, NazwS, Ocena, TypOcen)

Relacja zawiera dla niektórych
atrybutów wiele warto
ści.

Pierwsza posta

Pierwsza posta

ć

ć

normalna 1NF

normalna 1NF

-

-

przyk

przyk

ł

ł

ad

ad

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Moduły (NazwaModułu, NrPr, NazwPr)

Evans R

345

Dedukcyjne bazy danych

Davies T

234

Projekt. relacyjnych baz danych

Davies T

234

Systemy relacyjnych baz danych

NazwPr

NrPr

NazwaModułu

egz

A1

Smith J

34668

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Systemy relacyjnych baz danych

TypOcen

Ocena

NazwS

NrStud

NazwaModułu

Zaliczenia (NazwaModułu, NrStud, NazwS, Ocena, TypOcen)

Pierwsza posta

Pierwsza posta

ć

ć

normalna 1NF

normalna 1NF

-

-

przyk

przyk

ł

ł

ad

ad

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Druga posta

Druga posta

ć

ć

normalna 2NF

normalna 2NF

Relacja ma drugą postać normalną wtedy i tylko wtedy, gdy jest już w 1NF
oraz ka
żdy niekluczowy atrybut jest nieredukowalnie zależny od klucza
głównego.

Relacja spełnia założenia drugiej postaci normalnej, jeżeli spełnia dwa
zało
żenia:
1. Relacja jest 1NF
2. Atrybuty nie wchodz
ące w skład klucza są w pełni funkcjonalnie zależne
od całego klucza głównego (nie od jego cz
ęści).

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Druga posta

Druga posta

ć

ć

normalna 2NF

normalna 2NF

-

-

przyk

przyk

ł

ł

ad

ad

Moduły (NazwaModułu, NrPr, NazwPr)

Evans R

345

Dedukcyjne bazy danych

Davies T

234

Projekt. relacyjnych baz danych

Davies T

234

Systemy relacyjnych baz danych

NazwPr

NrPr

NazwaModułu

egz

A1

Smith J

34668

Dedukcyjne bazy danych

cwk1

B3

Patel P

34888

Projekt. relacyjnych baz danych

cwk1

B2

Smith S

34698

Projekt. relacyjnych baz danych

cwk2

B1

Patel P

34888

Systemy relacyjnych baz danych

cwk1

B1

Patel P

34888

Systemy relacyjnych baz danych

cwk1

B2

Jones S

37798

Systemy relacyjnych baz danych

cwk2

B1

Smith S

34698

Systemy relacyjnych baz danych

cwk1

B3

Smith S

34698

Systemy relacyjnych baz danych

TypOcen

Ocena

NazwS

NrStud

NazwaModułu

Zaliczenia (NazwaModułu, NrStud, NazwS, Ocena, TypOcen)

Nazwa modułu nie ma
wpływu na nazwisko

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Druga posta

Druga posta

ć

ć

normalna 2NF

normalna 2NF

-

-

przyk

przyk

ł

ł

ad

ad

Moduły (NazwaModułu, NrPr, NazwPr)

Evans R

345

Dedukcyjne bazy danych

Davies T

234

Projekt. relacyjnych baz danych

Davies T

234

Systemy relacyjnych baz danych

NazwPr

NrPr

NazwaModułu

egz

A1

34668

Dedukcyjne bazy danych

cwk1

B3

34888

Projekt. relacyjnych baz danych

cwk1

B2

34698

Projekt. relacyjnych baz danych

cwk2

B1

34888

Systemy relacyjnych baz danych

cwk1

B1

34888

Systemy relacyjnych baz danych

cwk1

B2

37798

Systemy relacyjnych baz danych

cwk2

B1

34698

Systemy relacyjnych baz danych

cwk1

B3

34698

Systemy relacyjnych baz danych

TypOcen

Ocena

NrStud

NazwaModułu

Zaliczenia (NazwaModułu, NrStud, Ocena, TypOcen)

Smith J

34668

Patel P

34888

Jones S

37798

Smith S

34698

NazwS

NrStud

Stud (NrStud, NazwS)

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Trzecia posta

Trzecia posta

ć

ć

normalna 3NF

normalna 3NF

Relacja jest w 3NF wtedy i tylko wtedy, gdy wszystkie niekluczowe atrybuty są:
a)

wzajemnie niezależne oraz

b)

nieredukowalnie zależne od klucza głównego.

Atrybutem niekluczowym jest dowolny atrybut nie wchodzący w skład
klucza głównego rozwa
żanej relacji,

Dwa lub więcej atrybutów są wzajemnie niezależne, jeżeli żaden z nich nie
jest funkcjonalnie zale
żny od dowolnej kombinacji innych. Niezależność
oznacza, ze każdy taki atrybut może być aktualizowany niezależnie od
innych.

Relacja jest trzeciej postaci normalnej (3NF) wtedy i tylko wtedy, gdy w

każdej chwili każda krotka składa się z wartości klucza głównego
identyfikuj
ącego pewną encję oraz ze zbioru zero lub więcej wzajemnie
niezale
żnych wartości atrybutów charakteryzujących ją w jakiś sposób.

Relacja jest w trzeciej postaci normalnej wtedy i tylko wtedy, gdy jest

drugiej postaci normalnej oraz każdy niekluczowy atrybut jest w sposób
nieprzechodni zale
żny od klucza głównego.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Druga posta

Druga posta

ć

ć

normalna 3NF

normalna 3NF

-

-

przyk

przyk

ł

ł

ad

ad

Moduły (NazwaModułu, NrPr, NazwPr)

Evans R

345

Dedukcyjne bazy danych

Davies T

234

Projekt. relacyjnych baz danych

Davies T

234

Systemy relacyjnych baz danych

NazwPr

NrPr

NazwaModułu

egz

A1

34668

Dedukcyjne bazy danych

cwk1

B3

34888

Projekt. relacyjnych baz danych

cwk1

B2

34698

Projekt. relacyjnych baz danych

cwk2

B1

34888

Systemy relacyjnych baz danych

cwk1

B1

34888

Systemy relacyjnych baz danych

cwk1

B2

37798

Systemy relacyjnych baz danych

cwk2

B1

34698

Systemy relacyjnych baz danych

cwk1

B3

34698

Systemy relacyjnych baz danych

TypOcen

Ocena

NrStud

NazwaModułu

Zaliczenia (NazwaModułu, NrStud, Ocena, TypOcen)

Smith J

34668

Patel P

34888

Jones S

37798

Smith S

34698

NazwS

NrStud

Stud (NrStud, NazwS)

NrPr determinuje
nazwisko pracownika,

zachodzi zatem zależność
przechodnia.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Druga posta

Druga posta

ć

ć

normalna 3NF

normalna 3NF

-

-

przyk

przyk

ł

ł

ad

ad

Moduły (NazwaModułu, NrPr)

345

Dedukcyjne bazy danych

234

Projekt. relacyjnych baz danych

234

Systemy relacyjnych baz danych

NrPr

NazwaModułu

egz

A1

34668

Dedukcyjne bazy danych

cwk1

B3

34888

Projekt. relacyjnych baz danych

cwk1

B2

34698

Projekt. relacyjnych baz danych

cwk2

B1

34888

Systemy relacyjnych baz danych

cwk1

B1

34888

Systemy relacyjnych baz danych

cwk1

B2

37798

Systemy relacyjnych baz danych

cwk2

B1

34698

Systemy relacyjnych baz danych

cwk1

B3

34698

Systemy relacyjnych baz danych

TypOcen

Ocena

NrStud

NazwaModułu

Zaliczenia (NazwaModułu, NrStud, Ocena, TypOcen)

Smith J

34668

Patel P

34888

Jones S

37798

Smith S

34698

NazwS

NrStud

Stud (NrStud, NazwS)

Evans R

345

Davies T

234

NazwPr

NrPr

Wykładowcy (NrPr, NazwPr)

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Posta

Posta

ć

ć

normalna

normalna

Boyce

Boyce

a

a

/

/

Codda

Codda

BCNF

BCNF

Relacja jest postaci BCNF wtedy i tylko wtedy, gdy elementem

determinującym każdej nietrywialnej, lewostronnie nieredukowalnej
zale
żności funkcyjnej jest klucz kandydujący.

Relacja znajduje się w postaci BCNF wtedy i tylko wtedy, gdy jedynymi

elementami determinującymi są klucze kandydujące.

Różnica pomiędzy 3NF i BCNF:

1.

Relacja posiada kilka kluczy kandydujących.

2.

Przynajmniej dwa klucze kandydujące składają się z więcej niż
jednego atrybutu

3.

Złożone klucze kandydujące mają wspólną kolumnę.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Posta

Posta

ć

ć

normalna

normalna

Boyce

Boyce

a

a

/

/

Codda

Codda

BCNF

BCNF

-

-

przyk

przyk

ł

ł

ad

ad

Proponowane rozwiązanie:

filmy (film_ID, film_tytuł)
obsada (film_ID, nazwa_aktora, rola, gaża)

Obsada (film_tytuł, film_ID, nazwa_aktora, rola, gaża)

Klucze kandydujące:

(film_ID, nazwa_aktora)
(film_tytuł, nazwa_aktora )

Zachodzi zależność pomiędzy atrybutami film_tytuł i film_ID

Problemy :

- Anomalia aktualizacji
- Nadmiarowość związana z atrybutami – film_tytuł, film_ID

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Zale

Zale

ż

ż

no

no

ś

ś

ci wielowarto

ci wielowarto

ś

ś

ciowa (MVD)

ciowa (MVD)

Niech R będzie relacją, zaś A, B i C będą dowolnymi podzbiorami zbioru
atrybutów R. Mówimy, że B jest wielowartościowo zależne od A

A

B

Wtedy i tylko wtedy, gdy zbiór wartości B odpowiadający danej parze
(wartość A, wartość C) w R zależy jedynie od wartości A i jest niezależny
od wartości C („A wielowartościowo określa B”).

Trygonometria

Prof. Green

Matematyka

Analiza wektorowa

Prof. Green

Matematyka

Analiza różniczkowa

Prof. Green

Matematyka

Podstawy optyki

Prof. Brown

Fizyka

Podstawy mechaniki

Prof. Brown

Fizyka

Podstawy optyki

Prof. Green

Fizyka

Podstawy mechaniki

Prof. Green

Fizyka

Nazwa

Nauczyciel

Kurs

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Wy

Wy

ż

ż

sze postacie normalne

sze postacie normalne

Wyższe postacie normalne służą do dekompozycji relacji z zależnościami
wielowartościowymi.

Czwarta postać normalna:
Relacja R jest w 4NF wtedy i tylko wtedy, gdy jeżeli istnieją podzbiory A i B
atrybutów relacji R takie,
że spełniona zależność wielowartościowa A

B,

to wszystkie atrybuty relacji R są także funkcjonalnie zależne od A.

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Przyk

Przyk

ł

ł

ad

ad

Trygonometria

Prof. Green

Matematyka

Analiza wektorowa

Prof. Green

Matematyka

Analiza różniczkowa

Prof. Green

Matematyka

Podstawy optyki

Prof. Brown

Fizyka

Podstawy mechaniki

Prof. Brown

Fizyka

Podstawy optyki

Prof. Green

Fizyka

Podstawy mechaniki

Prof. Green

Fizyka

Nazwa

Nauczyciel

Kurs

Występują relacje:

Kurs

Nauczyciel

Kurs

Nazwa

Proponowane relacje:

Nauczyciel (Kurs, nauczyciel )

Nazwa (Kurs, tytuł)

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Podsumowanie

Podsumowanie

W celu wykonania normalizacji danych potrzebujemy.

zrozumienia zależności funkcyjnych ;
zdrowego rozsądku ;
zrozumienia znaczenia danych ;
zrozumienia oczekiwań organizacji w stosunku do bazy

danych ;

znajomości procesu normalizacji .

background image

Antoni Dydejczyk, Bazy danych, wykład 4

WFiIS, Katedra Informatyki Stosowanej, 2007

Pytania ...

Pytania ...


Wyszukiwarka

Podobne podstrony:
Bazy danych w03 07 id 81702 Nieznany
Bazy danych w02 07 id 81701 Nieznany
Bazy danych w13 07 id 81707 Nieznany
Bazy danych w12 07 id 81706 Nieznany (2)
Bazy danych w07 07 id 81703 Nieznany
Bazy danych w10 07 id 81705 Nieznany
Bazy danych w08 07
Bazy danych 07 id 81462 Nieznany (2)
15.01.'07, materiały edukacyjne, Bazy danych
Radosław Wolicki Bazy Danych 07 01 2013

więcej podobnych podstron