Oskar Skibski, grupa nr 4, sala 2043

Bazy danych 2015/16

Laboratorium 6 (16.11.2015) - NF / Zależności Funkcyjne

Zależności i klucze

Dla podzbiorów atrybutów X, Y i relacji R zachodzi zależność funkcyjna X -> Y kiedy z równości krotek na atrybutach X wynika ich równość na atrybutach Y.

Zbiór atrybutów X nazywamy nadkluczem relacji R, kiedy jednoznacznie identyfikuje on krotkę relacji, tzn. wszystkie atrybuty są zależne funkcyjnie od X (X -> R).

Kluczem nazywamy minimalny nadklucz.

Domknięciem zbioru zależności nazywamy zbiór wszystkich zależności wyprowadzalnych z tego zbioru.

Pokryciem minimalnym zbioru zależności F nazywamy równoważny z F minimalny zbiór nietrywialnych zależności w którym wszystkie zależności funkcyjne mają jeden atrybut z prawej strony i minimalną potrzebną liczbę atrybutów z lewej.

Zadanie 1.

Dla relacji R = ABCDE i zbioru zależności funkcyjnych A -> BCD, BD -> C, C -> D, BD -> A, D -> E

  • wyznacz inne nietrywialne zależności funkcyjne
  • wymień wszystkie nadklucze i klucze relacji
  • wyznacz pokrycie minimalne zbioru zależności
Zadanie 2.

Dla relacji R = ABCDE i zbioru zależności funkcyjnych AC -> BD, B -> C, D -> A

  • wyznacz inne nietrywialne zależności funkcyjne
  • wymień wszystkie nadklucze i klucze relacji
  • wyznacz pokrycie minimalne zbioru zależności
Zadanie 3.

Czy poniższe pary zbiorów zależności funkcyjnych są równoważne?

  • A -> BC, BD -> C, C -> D, D -> A oraz A -> D, BD -> A, C -> A, D -> BC
  • AB -> C, AD -> B, C -> D oraz AB -> CD, AC -> BD, AD -> BC, BC -> AD

Postacie normalne

1NF - wszystkie atrybuty są atomowe

2NF - żaden atrybut wtórny (nie z klucza) nie wynika z części klucza

3NF - wszystkie nietrywialne zależności funkcyjne wynikają z nadklucza lub mają po prawej stronie tylko atrybuty z klucza (pewnego)

BCNF - wszystkie nietrywialne zależności funkcyjne wynikają z nadklucza

Zadanie 4.

Założenia których postaci normalnych spełniają poniższe relację?

  • R = ABCD z zależnościami A -> C, B -> D
  • R = ABCD z zależnościami AB -> C, C -> D
  • R = ABC z zależnościami AB -> C, C -> B
Zadanie 5.

Wypełnij poniższą tabelę w każdą komórkę wpisując najwyższą postać normalną w której nietrywialna zależność X -> A jest dopuszczalna.

A \ Xcały kluczczęść kluczaczęść klucza
+ atrybuty wtórne
atrybuty wtórne
atrybut główny    
atrybut wtórny    

Oskar Skibski (oski@mimuw.edu.pl), Wydział Matematyki, Informatyki i Mechaniki