Zaleznosci funkcyjne

0

Witam. Mam problem z rozpisaniem zaleznosci funkcyjnych w bazie danych. Ponizej wstawiam tabele w formie nieznormalizowanej. Nie do konca wiem jak do tego podejsc, gdyz nie moge skorzystac z surrogate key. Prosze o wskazowki

0

To zrob business key.
Subject - name
Tutor - name
Conntact: phone + email

W realu tez czasem masz glupie zadania lub optymalizacje przez denormalizacje.

0

Ja rozumiem to tak:
a) na wejściu masz podaną pewną relację
b) masz zestaw atrybutów: SUBJECT, TUTOR NAME, CONTACT DETAILS, LOCATION (dla uproszczenia zapisu nazwijmy je: A,B,C,D - nie jest istotne co one logicznie znaczą, mogą nic nie znaczyć i być po prostu Foobarami i Foobazami)

Masz znaleźć zależności funkcyjne: X -> Y, gdzie X oraz Y są zbiorami atrybutów relacji (A,B,C,D).
X,Y może być jednym z {A, B, C, D, AB, AC, AD, BC, BD, CD, ABC, ABD, BCD, ABCD } -> 14 x 14 => 196 możliwości do sprawdzenia

Oprócz trywialnych zależności: A->A, B->B, C->C, D->D, itd., masz do sprawdzenia nietrywialne:
A -> B, A->C, A->D nie jest prawdą (bo możesz wskazać kontrprzykłady, np. A->B Maths -> Jeff|Jackie), więc nie jest też prawdą, że A->cokolwiek (!= A -> wycięliśmy właśnie 13 możliwości)
B -> A (nie jest prawdą, bo Jeff -> Math|Science), B->C (jest prawdziwe ), B->D (nie jest prawdą, bo Ahmed -> Llandra | Talybont)
C-> A (nie jest prawdą, bo ..543 -> Math|English), itd.
...

Nie musisz wałkować wszystkich 196 możliwości, tylko zrobić sprytne obserwacje, tak by obciąć masę możliwości do sprawdzenia ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1