ullman135 (2)

ullman135 (2)



ż/0 <- DZ1AI.AW1A W MODELU RI1ACYJNYM

PRZYKŁAD 4 54

Załóżmy, żc relacja H została określona dwiema regułami:

HU, y) 4- S (x, y) AND x > 1 H(x, y) ♦- S(x, y) AND y < 5

W relacji S występują wartości takie same jak na rys. 4.30 (b), tzn.:

jl

2

4

4


C

3

5

5

Po przetworzeniu pierwszej reguły do // zostają włączone wszystkie krotki relacji S, ponieważ w każdej krotce pierwsza składowa jest większa od 1. Z zastosowania drugiej reguły do relacji // zostaje dołączona tylko krotka (2, 3), ponieważ krotka (4, 5) nic spełnia warunku y < 5. A zatem w wynikowej relacji H są dwie kopie krotki (2, 3) oraz dwie kopie krotki (4, 5).

4.6.8. Ć wiczenia do podrozdziału 4.6

•Ćwiczenie 4.6.1. Załóżmy, żc relacja PC jest określona tak samo jak na rysunku 4.IO(a), a trzeba obliczyć wartość rzutowania    Jaki wynik otrzymuje się.

gdy wyrażenie jest obliczane w konwencji zbiorów. A jaki w konwencji wiclozbio-rów? Jaka jest wartość średnia krotek otrzymana w przypadku obliczenia w konwencji zbiorów? A jaka, gdy przyjmujemy konwencję wielozbiorow?

Ćwiczenie 4.6.2. Należy wykonać polecenia z ćwiczenia 4 6 1, gdy operacją rzutowania jest **XPC).

Ćwiczenie 4.6.3. W tym ćwiczeniu korzystamy z relacji „okręty”, zdefiniowanej w ćwiczeniu 4.1.3.

a) Wyrażenie ^jt^Klasy) określa jednokolumnową relację, w której są zapisane kalibry dział poszczególnych klas okrętów. Określić wartości tej relacji w przypadku traktowania wyrażenia jako zbioru oraz jako wielozbioru. Wartość należy obliczać z danych zawartych w ćwiczeniu 4.1.3.

!b) Należy utworzyć wyrażenie algebry relacji, dzięki któremu można uzyskać wartości kalibru największych dział poszczególnych okrętów (nic klas okrętów). Relacje należy traktować jako wielozbiory, tzn. że liczba wystąpień pewnej wartości b określa, ile okrętów ma dany typ działa.

!( wiczenie 4.6.4. Pewne prawa algebry relacji prawdziwe dla zbiorów są spełnione również, gdy relacje traktuje się jako wielozbiory. Należy uzasadnić dlaczego poniższe prawa obowiązują zarówno dla zbiorów, jak i dla wiclozbiorów.

•a) Prawo łączności dodawania: (/? kj S) w TR o (S u 7).

b)    Prawo łączności mnożenia: (R ^ S) r> T s R r\ (S r* T).

c)    Prawo łączności dla złączenia naturalnego: (R txi S) cxj T R tx (S tx T).

d)    Prawo przcmicnności dodawania: (R u .9) a (5 u R). c) Prawo przcmicnności mnożenia (Rr\S)u(Sr\ R).

0 Prawo przcmicnności złączenia naturalnego: (R c*a S(S c*j R). g) rr,{R u 5) ■ */.(/?) u *i,(S). /. jest listą dowolnych atrybutów •h) Rozdzielność dodawania względem mnożenia: R \u(S n 7) *• (R vj .V) u 7).

i) °c and «(/?) «* ^(</0 ^    gdzie C i f) oznaczają dowolne warunki

nałożone na krotki relacji R.

!!Ć w leżenie 4.6.5. Prawa algebraiczne, które zdefiniowano poniżej, zachodzą w przypadku zbiorów, ale nie w przypadku wielozbiorów. Należy uzasadnić, dlaczego zachodzą one dla zbiorów, oraz podać kontrprzykłady, które wykażą, że te prawa nie obowiązują dla wielozbiorów.

*a) (Rr\S)-TmRry(S-T).

b)    Prawo rozdzielności mnożenia względem dodawania: R o {S u'/) = (/? o S) yj(Rr\T).

c)    °c o« iXR)a(<R) v ati.R)> gdzie C i D oznaczają dowolne warunki nałożone na krotki relacji R.

4.7. Inne rozszerzenia modelu relacyjnego

Istnieją pojęcia i operacje formalnie nic należące do modelu relacyjnego, ale ze względu na swoją użyteczność zostały wprowadzone do języków zapytań. W bieżącym rozdziale omówimy operacje, które modyfikują relacje, tw orzą agregacje danych, takie jak suma danych z kolumn, a także służą do tworzenia „perspektyw” lub nazywanych funkcji działających na relacjach. Każde z tych pojęć i operacji ma swój odpowiednik w języku zapytań do baz danych SQL, będą one omówione w rozdziale 5. Części z nich poświęcimy także uwagę przy okazji omawiania języka OQL w rozdziale 8.

4.7.1. Modyfikacje

Algebrę relacyjną oraz Datalog można traktować jako języki zapytań, ponieważ można w nich określić relację lub uzyskać wartość funkcji zastosowanej do określonej relacji. Zapytania są bardzo ważne, ale taka baza danych, której zawartości nic można by zmieniać, nic byłaby interesująca. Z tego powodu wszystkie języki systemów' ba/ danych zaw ierają zarówno mechanizmy do zapisu zapytań do bazy danych, jak i do modyfikowania jej zawartości. Minimalny zbiór powinien zawierać następujące rozkazy:


Wyszukiwarka

Podobne podstrony:
18906 ullman104 (2) 214 1 DZIAŁANIA W MODELU RELACYJNYM Jedynym wspólnym atrybutem obu relacji S i R
87122 ullman091 (2) 188 3 RELACYJNY MODKJ. DANYCH JĆwiczcnie 3.7.3. Załóżmy, żc relacja R jest taka
MATEMATYKA089 170 HI. Rachunek różniczkowy7. ASYMPTOTY KRZYWEJ ASYMPTOTY PIONOWE Załóżmy, żc funkcja
MATEMATYKA089 170 HI. Rachunek różniczkowy7. ASYMPTOTY KRZYWEJ ASYMPTOTY PIONOWE Załóżmy, żc funkcja
MATEMATYKA089 170 HI. Rachunek różniczkowy7. ASYMPTOTY KRZYWEJ ASYMPTOTY PIONOWE Załóżmy, żc funkcja
ullman065 (2) 136 1 RELACYJNY MODEL DANYCH Nazwy atrybutów wprowadzonych do relacji zostały uważnie
28640 ullman078 (2) 162 3. RELACYJNY MODEL DANYCH PRZYKŁAD 3.28 Rozważmy relację z atrybutami: A, B,
50337 ullman111 (2) 4 DZIAŁANIA W MODELU RELACYJNYM łach zapisuje się na przykład, że jeśli w pewnej
39663 ullman102 (2) 210 4. DZIAŁANIA W MODELU RELACYJNYM Inny przykład zastosowania rzutowania poleg

więcej podobnych podstron