192 3 RELACYJNY MODEL DANYCH
Oznacza lo, że dla każdej gwiazdy zbiór adresów musi tworzyć kombinacje ze wszystkimi filmami. Na przykładzie pierwszej i czwartej krotki z rys. 3.39 widać, w jaki sposób stosuje się formalną definicję zależności wiclowarto-ściowej:
nazwisko |
ulica |
miasto |
tytuł |
rok |
C.Fisner |
123 Mapie st. |
Hollywood |
Gwiezdne Wojny |
1977 |
C Fisher |
5 Locus Lr.. |
Maiibu |
Imperium kontratakuje |
1980 |
Oznaczmy pierwszą krotkę jako r, a drugą jako u. Z definicji zależności wiclowartościowej wynika, źc w R musi istnieć krotka, która dla nazwiska ma wartość C. Fi sher, a w ulicy i nazwisku jest zgodna z pierwszą krotką, podczas gdy pozostałe atrybuty (tytuł i rok) mają wartości takie same jak w drugiej krotce. Rzeczywiście w R taka krotka występuje, na rys. 3.39 jest to trzecia krotka z kolei.
A teraz oznaczmy drugą krotkę jako /, a pierwszą jako u. Z naszej zależności wynika wówczas, że w R występuje krotka zgodna z t co do atrybutów
nazwisko, ulica i miasto, a z w co do atrybutów nazwisko, tytuł oraz rok. I ta krotka występuje w R - jest nią druga krotka na rys. 3.39.
□
Do zależności wielowartościowych stosuje się wiele reguł podobnych do reguł, które opisaliśmy w podrozdziale 3.6 dla zależności funkcyjnych. Na przykład zależności wielow arlościowe spełniają:
• Regułą przechodni ości, która stanowi, że jeśli zachodzą zależności A\Ai... An —*-» B\B2... Bm oraz B\B2... Bm —*-*■ CiC2... C*, to zachodzi również zależność
A\A2.... A„ -*-> C,C2... C*
Zależności wielowartościowe nie spełniają natomiast reguły podziału/łączenia. PRZYKŁAD 3.45
Rozważmy ponownie rys. 3.39 z zależnością wielowartościową:
nazwisko -*-* ulica miasto
Gdyby obowiązywała reguła podziału, to można by oczekiwać, że zachodzi zależność:
nazwisko -*-*■ ulica
Oznacza ona, że ulica w adresie gwiazdy nie zależy od żadnego innego atrybutu. nawet od miasta. Ale przecież takie stwierdzenie nic jest prawdziwe. Rozważmy dwie pierwsze krotki z rys. 3.39. Nasza hipotetyczna zależność upoważnia nas do stwierdzenia, że jeśli w tych krotkach zamienimy wartości ulic, to otrzymane krotki znajdą się w relacji:
nazwisko |
ulica |
miasto |
tytuł |
rok | |
C.Fishor C Fishcr |
5 Locus Ln. 123 Mapie st. |
Hollywood Malibu |
Gwiezdne Gwiezdne |
Wojny woj r.y |
1977 1977 |
ale nie jest to prawrda, bo dom przy ulicy Locus Ln. 5 jest w Malibu, a nie w Hollywood.
□
Są jednak inne reguły, które obowiązują dla zależności u iclowartościo-wych. A oto pierwsza z nich:
• Każda zależność funkcyjna jest zależnością .wielowartościową. To znaczy, że: jeśli A\A2... A„ —> /?,/?2... Bm, to A\A2... A» —*-> B\B2... Bm
Uzasadnimy to w następujący sposób. Załóżmy, że w relacji R zachodzi zależność A\A2... A„ —*■ B\B2... Bm, a jej krotka v zgadza się z krotkami l i u dla atrybutów A. z krotką i dla atrybutów typu B. a z u dla pozostałych atrybutów. W szczególności v może być równe u. Krotka u z pewnością jest zgodna z // i t dla atrybutów typu A, co wynika z przyjętego założenia. Z zależności funkcyjnej A,A2...An —> B\Bi...B„ wynika, że muszą być one również zgodne dla