Kolokwium teoretyczne (2011)

Zadanie 1.

Dla relacji R = ABCDEFGH i zbioru zależności funkcyjnych

X = {G->E, EF->GH, B->CD, C->B, H->F, ABC->H, AB->EF, AD->CE}
  • znajdź wszystkie klucze
  • ustal w której jest postaci normalnej (i uzasadnij)
  • (jeżeli już nie jest) sprowadź ją do trzeciej postaci normalnej tracąc możliwie najmniej zależności funkcyjnych (które zależności z X zostały utracone?) dla każdej powstałej relacji zaznacz klucz i wypisz zależności funkcyjne w niej spełnione
Zadanie 2.

Dla relacji R = ABCDEF i zbioru zależności funkcyjnych

X = {D->A, B->E, CF->ABE, F->D, BF->C, C->D}
  • znajdź wszystkie klucze
  • ustal w której jest postaci normalnej (i uzasadnij)
  • (jeżeli już nie jest) sprowadź ją do postaci normalnej Boyce'a-Codda tracąc możliwie najmniej zależności funkcyjnych (które zależności z X zostały utracone?) dla każdej powstałej relacji zaznacz klucz i wypisz zależności funkcyjne w niej spełnione
Zadanie 3.

Zaproponuj model związków encji dla bazy danych w której przechowywane będą informację o piłkarzach, drużynach, meczach i golach. Przyjmij, że każdy piłkarz w dowolnym momencie gra w jednej drużynie (może ją jednak zmieniać w trakcie sezonu), dowolne dwie drużyny mogą rozgrywać między sobą dowolną ilość meczy. Baza danych ma pozwalać na:

  • wypisanie wyniku dowolnego meczu
  • wypisanie w jakiej drużynie gra aktualnie piłkarz
  • wypisanie wszystkich meczy w których dany zawodnik strzelił gola

Baza danych nie musi (ale może) pozwalać na wypisanie wszystkich drużyn w jakich piłkarz występował. Dla uproszczenia można przyjąć, że w piłce nożnej nie występują samobóje (piłkarz zawsze strzela gole dla drużyny w której występuje w momencie meczu). Wszystkie inne założenia o danych powinny być opisane.

Zaznacz na diagramie wszystkie związki między encjami, wskaż ich krotności oraz czy są wymagane. W każdej encji oznacz klucz główny (PK) oraz gwiazdką (*) atrybuty obowiązkowe.


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