zmień kontrast czcionka: A A A
rss angielski
jesteś w >> normalizacja >>postać normalna Boyce-Codda

postać normalna Boyce-Codda

Jest to postać uzupełniająca III PN. Relacja jest w postaci B-C jeśli:

Przykład

Każdy student może wybrać kilka przedmiotów, a wykładowca może prowadzić tylko jeden przedmiot.
studentprzedmiotwykładowca
ZającmatematykaRóżański
ZimamatematykaGraczyk
JakubczakmatematykaGraczyk
ZimafizykaKolasa
JańskafizykaBednarz
ZygmuntfizykaBednarz
tabela `Przedmioty` przed normalizacją Jako klucz główny może istnieć pole student + przedmiot, taki klucz jednoznacznie identyfikuje nazwisko prowadzącego. Drugim kandydatem na klucz podstawowy może być para student + wykładowca. Przy tej drugiej opcji nie spełniona jest III postać normalna, ponieważ klucz student + wykładowca nie determinują nazwy przedmiotu, a nazwa przedmiotu zależy tylko i wyłącznie od nazwiska wykładowcy. Z tego powodu jako kandydata na klucz główny powinno się wziąć pod uwagę pola student + przedmiot

Pojawia się tutaj problem. Załóżmy, że chcemy przydzielić nazwiska prowadzących do odpowiednich przedmiotów przed rozpoczęciem zapisów studentów na konkretny przedmiot. Nie możemy tego zrobić, ponieważ nazwisko studenta jest częścią klucza głównego i z tego powodu, przy wstawianiu nowego wiersza tabeli trzeba wstawić nazwisko studenta.

Również może zaistnieć anomalia w przypadku, gdy wystąpi potrzeba zmiany nazwiska prowadzącego przedmiot. Wtedy będzie trzeba wstawić nowe nazwisko do wielu wierszy jednocześnie.

Aby zaradzić tym problemom należy sprowadzić tabelę do postaci Boyce-Codda. W tym celu zostaną utworzone 3 tabele :

studentprzedmiot
Zającmatematyka
Zimamatematyka
Jakubczakmatematyka
Zimafizyka
Jańskafizyka
Zygmuntfizyka
tabela z wybranymi przez studentów przedmiotami
studentwykładowca
ZającRóżański
ZimaGraczyk
JakubczakGraczyk
ZimaKolasa
JańskaBednarz
ZygmuntBednarz
tabela ze studentami i ich wykładowcami
przedmiotwykładowca
matematykaRóżański
matematykaGraczyk
fizykaKolasa
fizykaBednarz
tabela z nazwiskami wykładowców i z nazwami wykładanych przedmiotów [ wróć na górę strony ]