To tylko jedna z 2 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
Wy 8
Dane są relacje R1 i R2. Podzbiór FK atrybutów relacji R1 nazywany jest kluczem obcym R1 jeżeli:
atrybuty w FK (foreign key) relacji R1 mają taką samą domenę jak atrybuty klucza podstawowego PK (primary key) relacji R2
dla każdej krotki t1 relacji R1 istnieje dokładnie jedna krotka t2 relacji R2, taka że t1[FK}=t2[PK] lub t1[FK]=NULL
Przykład
1. usuwamy wykładowcę Królika wszystkie prowadzone przez niego wykłady
2. usuwamy wykładowcę a nr pracownika ustawiamy na NULL
3. zabraniamy usunąć Królika dopuki prowadzi wykłady
W przypadku usuwania krotek relacji docelowej mamy 3 możliwości
* ograniczone usuwanie - zabraniamy usuwania ↺
Operacje algebry relacyjnej:
selekcja (select) - wybiera z tabeli tylko niektóre wiersze, szukanie prezentowanych wyników
projekcja (project) - wybiera z tabeli tylko niektóre kolumny
iloczyn kartezjański (cross join)
połączenie naturalne (natural join)
połączenie wewnętrzne (inner join)
połączenie zewnętrzne (outer join)
suma zbiorów (union)
część wspólna zbiorów (intersection)
różnica zbiorów (minus, difference)
Ad1.
wybiera niektóre wiersze; wydobywa z wejściowej relacji wiersze spełniające podany warunek. Wynikiem selekcji wykonanej relacji jest również relacja
Ad2.
tworzy relację będącą podzbiorem kolumn relacji wejśiowej
Składanie operacji
Dwie relacje: R(A1,...An) i S(B1,...Bn) są kompatybilne, jeżeli mają ten sam stopień i jeżeli dom(Ai)=dom(Bi) dla 1≤i≤n
Operacje na kompatybilnych relacjach R i S
suma R∪S
iloczyn R∩S
różnica R-S
Kompatybilność to ta sama ilość kolumn i te same typy domeny
Iloczyn kartezjański wyniku relacji R i S
RxS jest relacją Q stopnia ntm(?) i schemacie: Q(A1, ...An, B1, ..,Bn)
Połączenia wewnętrzne:
* Połączenie równościowe = iloczyn kartezjański + selekcja
* Połączenie naturalne - połączenie równościowe wewnętrzne; - nie bierze pod uwagę powtórzeń kolumny
* Połączenie zewnętrzne: wszystkie wiersze z jednej lub drugiej tabeli
Połączenia zewnętrzne:
lewostronne (np. widać wszystkie wykłady)
prawostronne (np. wszyscy pracownicy nawet jeśli nie prowadzą wszystkich wykładów)
obustronne = lewostronne + prawostronne
... zobacz całą notatkę
Komentarze użytkowników (0)