136 1 RELACYJNY MODEL DANYCH
Nazwy atrybutów wprowadzonych do relacji zostały uważnie wybrane, ponieważ, jeśli jak dotychczas używalibyśmy określenia „nazwa”, to nie byłoby jak odróżnić, czy chodzi o nazwę studia producenta, czy o studio gwiazdy.
□
Jeśli w diagramie związków encji występuje słaby zbiór encji, to trzeba przestrzegać trzech różnych zasad:
1. Relacja odpowiadająca słabemu zbiorowi encji W musi zawierać nie tylko atrybuty W, ale także te atrybuty kluczy z innych zbiorów encji, które wchodzą w skład zbioru W. Te wspomagające zbiory encji są łatwe do rozpoznania, ponieważ uczestniczą wraz z W w związkach wicie do jeden, a te związki z kolei w diagramie są oznaczone podwójnym rombem.
2. Każdy związek, który obejmuje słaby zbiór encji W, musi korzystać ze wszystkich atrybutów klucza W\ włączając w to klucze W pochodzące z innych zbiorów encji, które uczestniczą w W.
3. Jednakże, jak się przekonamy później, związki oznaczane podwójnym rombem, które istnieją po to, aby udostępnić dla zbioru W atrybuty klucza z właściwych zbiorów encji, wcale nic muszą być przekształcone w osobną relację. Atry buty tych związków zawsze będą bowiem stanowić podzbiór słabego zbioru encji W, a tego typu związki nie dostarczają poza tym żadnych innych danych, ich jedyna funkcja polega na odnalezieniu właściwego klucza dla W.
Oczywiście, przy wprowadzaniu do słabego zbioru encji tych dodatkowych atrybutów trzeba zachować ostrożność i nie dopuścić do tego, aby jakaś nazwa wystąpiła dwukrotnie. Jeśli jest to konieczne, to część atrybutów, lub nawet wszystkie, trzeba przemianować.
RYSUNEK 3.18
Zespoły jako przykład słabego zbioru encji
PRZYKŁAD 3.15
Rozważmy słaby zbiór encji Zespoły z rys. 2.27, który zamieściliśmy ponownie na rys. 3.18. Z tego diagramu tworzymy trz\ relacje o następujących schematach:
Studia (nazwa, adr)
Zespoły(numer, nazwaStudia)
Jednostka-w(numer, nazwaStudia, nazwa)
Pierwsza relacja studia jest wynikiem najprostszego przekształcenia ze zbioru encji o takiej samej nazwie. Druga relacja Zespoły jest odpowiednikiem słabego zbioru encji Zespoły. Atrybutami tej relacji są atrybuty klucza zbioru Zespoły. Jeśli istniałyby w tym zbiorze jeszcze inne atrybuty, to trzeba by je dołączyć również do schematu tej relacji. Atrybut w relacji Zespoły o nazwie nazwaStudia stanowi odpowiednik atrybutu nazwa w zbiorze encji Studia.
Trzecia relacja Jednostka-w powstaje ze związku o takiej samej nazwie. Jak we wszystkich przypadkach, tak i tu związek encji reprezentujemy w modelu relacyjnym relacją, której schemat zawiera atrybuty kluczy wszystkich zbiorów encji objętych oryginalnym związkiem. W rozważanym przypadku relacja Jednostka-w zawiera atrybuty numer oraz nazwaStudia, które są kluczem słabego zbioru encji Zespoły oraz atrybut nazwa, który jest kluczem zbioru encji Studia. Zauważmy jednak, że studio o kluczu nozwa-Stućia jest tym samym studiem, którego kluczem jest nazwa, ponieważ Jednostka-w jest związkiem wiele do jeden.
Załóżmy na przykład, że Disney #3 oznacza jeden z zespołów w studio Disneya. Zatem w zbiorze związku Jednostka- w występuje para
(Disney #3, Disney)
Para ta w krotce relacji Jednostka-w będzie reprezentowana następująco:
(3, Disney, Disney)
W konsekwencji możemy w relacji Jednostka-w połączyć atrybuty nazwaStudia i nazwa, co da prostszy schemat:
Jednostka-w(numer, nazwo)
A teraz widać już, żc można całkiem pominąć relację Jednostka-w, ponieważ jej atrybuty są podzbiorem atrybutów relacji Zespoły.
□
PRZYKŁAD 3.16
Rozważmy teraz słaby zbiór encji Kontrakty z przykładu 2.31 i rys. 2.28 z p. 2.6.1. Powtarzamy ten diagram na rys. 3.19. Poniżej zamieszczamy schemat relacji Kontrakty: