[ Pobierz całość w formacie PDF ]
.Mówimy, że podzbiór atrybutów Y jest wielowartościowo funkcjonalnie zależny odpodzbioru atrybutów X w schemacie R, jeżeli dla dowolnej relacji r w schemacie R idla dowolnej pary krotek t1 i t2 z relacji r takich, że t1[X] = t2[X], istnieje taka parakrotek s1 i s2 w relacji r, żes1[X] = s2[X] = t1[X] = t2[X] orazs1[Y] = t1[Y] i s1[R-X-Y] = t2[R-X-Y] orazs2[Y] = t2[Y] i s2[R-X-Y] = t1[R-X-Y].42 Bazy danych Robert ChwastekMówiąc inaczej, jeżeli dla dowolnej pary krotek t1 i t2 z relacji r takich, że wartości tychkrotek dla atrybutów z podzbioru X są sobie równe (co zapisujemy t1[x] = t2[X]),zamienimy w tych krotkach wartości atrybutów z podzbioru Y, to otrzymane w tensposób krotki s1 i s2 również należą do relacji r.Przykładowo chcąc zapisać, że Kowalski ma dzieci o imionach Agnieszka i Magdaoraz, że wykłada przedmioty Język C i Systemy operacyjne , natomiast Nowak madzieci Jarosław , Jan i Aleksander oraz wykłada przedmioty Bazy danych i Teoria kompilatorów można zdefiniować następującą tabelę:PracownicyNazwisko Dziecko WykładKowalski Agnieszka Język CKowalski Agnieszka Systemy operacyjneKowalski Magda Język CKowalski Magda Systemy operacyjneNowak Jarosław Bazy danychNowak Jarosław Teoria kompilatorówNowak Jan Bazy danychNowak Jan Teoria kompilatorówNowak Aleksander Bazy danychNowak Aleksander Teoria kompilatorówOkreślając podzbiór X = (Nazwisko) i Y = (Dziecko) otrzymujemy, że R-X-Y =(Wykład).Parze krotek:t1 = (Kowalski, Agnieszka, Język C)t2 = (Kowalski, Magda, Systemy operacyjne)odpowiada para kroteks1 = (Kowalski, Agnieszka, Systemy operacyjne)s2 = (Kowalski, Magda, Język C)Należy zwrócić uwagę, że wystąpienie krotek spełniających wymienione wyżej warunki,wiąże się najczęściej z niezależnością jednego zbioru atrybutów od drugiego (w tymwypadku jednoelementowego zbioru atrybutów (Dziecko) od jednoelementowegozbioru atrybutów (Wykład)).Z definicji wielowartościowej zależności funkcjonalnej wynika, że:podzbiór pusty jest zawsze wielowartościowo funkcjonalnie zależny od dowolnegozbioru atrybutów X43 Bazy danych Robert Chwastekjeśli X Y=R, to X jest wielowartościowo funkcjonalnie zależny od Y i na odwrót.Zależności te nazywamy trywialnymi wielowartościowymi zależnościamifunkcjonalnymi.Dekompozycją schematu R = (A1, A2,., An) nazywamy zastąpienie go zbiorem(niekoniecznie rozłącznych) schematów relacji (R1, R2,., Rm) takich, że każdyschemat Ri z tego zbioru stanowi podzbiór zbioru atrybutów (A1,., An) i( ,., )Mówimy, że w schemacie relacji R = (A1,., An) występuje połączeniowa zależnośćfunkcjonalna (co zapisuje się: *R[R1,., Rn]) wtedy i tylko wtedy, gdy możliwa jestdekompozycja relacji r (o schemacie R) na relacje r1,., rn taka, że relację pierwotną rmożna zrekonstruować przez wykonanie sekwencji operacji połączenia relacji r1,., rm.Można pokazać, że wielowartościowa zależność funkcjonalna stanowi szczególnyprzypadek połączeniowej zależności funkcjonalnej dla m = 2.Mówimy, że połączeniowa zależność funkcjonalna *R[R1,., Rm] wynika z zależnościatrybutów schematu R od klucza wtedy i tylko wtedy, gdy w dowolnej sekwencjipołączeń relacji składowych wykonywanych w celu rekonstrukcji relacji r, każdaoperacja połączenia jest wykonywana względem zbioru identyfikującego schematu R.3.8.4.Druga postać normalnaRelacja jest w drugiej postaci normalnej, jeżeli każdy atrybut wtórny (tzn.niewchodzący w skład żadnego klucza potencjalnego) tej relacji jest w pełni funkcjonalniezależny od wszystkich kluczy potencjalnych tej relacji.Można zauważyć, że relacja Zamówienia nie jest w drugiej postaci normalnej,ponieważ atrybuty Id dostawcy , Nazwa dostawcy , Adres dostawcy i Nazwaczęści nie są w pełni funkcjonalnie zależne od jedynego klucza potencjalnego - pary ( Nrzamówienia , Id części ).W celu sprowadzenia relacji do drugiej postaci normalnej, należy podzielić ją natakie relacje, których wszystkie atrybuty będą w pełni funkcjonalnie zależne od kluczy [ Pobierz całość w formacie PDF ]
zanotowane.pl doc.pisz.pl pdf.pisz.pl odbijak.htw.pl
.Mówimy, że podzbiór atrybutów Y jest wielowartościowo funkcjonalnie zależny odpodzbioru atrybutów X w schemacie R, jeżeli dla dowolnej relacji r w schemacie R idla dowolnej pary krotek t1 i t2 z relacji r takich, że t1[X] = t2[X], istnieje taka parakrotek s1 i s2 w relacji r, żes1[X] = s2[X] = t1[X] = t2[X] orazs1[Y] = t1[Y] i s1[R-X-Y] = t2[R-X-Y] orazs2[Y] = t2[Y] i s2[R-X-Y] = t1[R-X-Y].42 Bazy danych Robert ChwastekMówiąc inaczej, jeżeli dla dowolnej pary krotek t1 i t2 z relacji r takich, że wartości tychkrotek dla atrybutów z podzbioru X są sobie równe (co zapisujemy t1[x] = t2[X]),zamienimy w tych krotkach wartości atrybutów z podzbioru Y, to otrzymane w tensposób krotki s1 i s2 również należą do relacji r.Przykładowo chcąc zapisać, że Kowalski ma dzieci o imionach Agnieszka i Magdaoraz, że wykłada przedmioty Język C i Systemy operacyjne , natomiast Nowak madzieci Jarosław , Jan i Aleksander oraz wykłada przedmioty Bazy danych i Teoria kompilatorów można zdefiniować następującą tabelę:PracownicyNazwisko Dziecko WykładKowalski Agnieszka Język CKowalski Agnieszka Systemy operacyjneKowalski Magda Język CKowalski Magda Systemy operacyjneNowak Jarosław Bazy danychNowak Jarosław Teoria kompilatorówNowak Jan Bazy danychNowak Jan Teoria kompilatorówNowak Aleksander Bazy danychNowak Aleksander Teoria kompilatorówOkreślając podzbiór X = (Nazwisko) i Y = (Dziecko) otrzymujemy, że R-X-Y =(Wykład).Parze krotek:t1 = (Kowalski, Agnieszka, Język C)t2 = (Kowalski, Magda, Systemy operacyjne)odpowiada para kroteks1 = (Kowalski, Agnieszka, Systemy operacyjne)s2 = (Kowalski, Magda, Język C)Należy zwrócić uwagę, że wystąpienie krotek spełniających wymienione wyżej warunki,wiąże się najczęściej z niezależnością jednego zbioru atrybutów od drugiego (w tymwypadku jednoelementowego zbioru atrybutów (Dziecko) od jednoelementowegozbioru atrybutów (Wykład)).Z definicji wielowartościowej zależności funkcjonalnej wynika, że:podzbiór pusty jest zawsze wielowartościowo funkcjonalnie zależny od dowolnegozbioru atrybutów X43 Bazy danych Robert Chwastekjeśli X Y=R, to X jest wielowartościowo funkcjonalnie zależny od Y i na odwrót.Zależności te nazywamy trywialnymi wielowartościowymi zależnościamifunkcjonalnymi.Dekompozycją schematu R = (A1, A2,., An) nazywamy zastąpienie go zbiorem(niekoniecznie rozłącznych) schematów relacji (R1, R2,., Rm) takich, że każdyschemat Ri z tego zbioru stanowi podzbiór zbioru atrybutów (A1,., An) i( ,., )Mówimy, że w schemacie relacji R = (A1,., An) występuje połączeniowa zależnośćfunkcjonalna (co zapisuje się: *R[R1,., Rn]) wtedy i tylko wtedy, gdy możliwa jestdekompozycja relacji r (o schemacie R) na relacje r1,., rn taka, że relację pierwotną rmożna zrekonstruować przez wykonanie sekwencji operacji połączenia relacji r1,., rm.Można pokazać, że wielowartościowa zależność funkcjonalna stanowi szczególnyprzypadek połączeniowej zależności funkcjonalnej dla m = 2.Mówimy, że połączeniowa zależność funkcjonalna *R[R1,., Rm] wynika z zależnościatrybutów schematu R od klucza wtedy i tylko wtedy, gdy w dowolnej sekwencjipołączeń relacji składowych wykonywanych w celu rekonstrukcji relacji r, każdaoperacja połączenia jest wykonywana względem zbioru identyfikującego schematu R.3.8.4.Druga postać normalnaRelacja jest w drugiej postaci normalnej, jeżeli każdy atrybut wtórny (tzn.niewchodzący w skład żadnego klucza potencjalnego) tej relacji jest w pełni funkcjonalniezależny od wszystkich kluczy potencjalnych tej relacji.Można zauważyć, że relacja Zamówienia nie jest w drugiej postaci normalnej,ponieważ atrybuty Id dostawcy , Nazwa dostawcy , Adres dostawcy i Nazwaczęści nie są w pełni funkcjonalnie zależne od jedynego klucza potencjalnego - pary ( Nrzamówienia , Id części ).W celu sprowadzenia relacji do drugiej postaci normalnej, należy podzielić ją natakie relacje, których wszystkie atrybuty będą w pełni funkcjonalnie zależne od kluczy [ Pobierz całość w formacie PDF ]