Algebra relacji - przypomnienie Niech R(A 1,..., A k ) i S(B 1,..., B n ) relacje. Podstawowe operacje na relacjach: operacje teoriomnogościowe: suma R S, iloczyn R S, różnica R \ S, iloczyn kartezjański R S, rzutowania π Ai1,...,A ik (R), przemianowanie ρ T (C1,...,C k )(R). selekcja σ W (R), gdzie σ warunek.
Algebra relacji - przypomnienie Niech R(A 1,..., A k ) i S(B 1,..., B n ) relacje. złaczenie (naturalne) R S, złaczenie warunkowe (theta) R W S, Uwaga. Złaczenie warunkowe tworzymy przez wybranie z iloczynu kartezjańskiego relacji tych krotek, które spełaniaja warunek W. Wynikowa relacja ma inny schemat niż przy zwykłym złaczeniu.
Algebra relacji - przykład Niech R(mama, dziecko) = mama dziecko Ala Ela Ela Jan Ola null Złaczenie R S to mama dziecko tata Ala Ela Jan Ela Jan Adam Ela Jan Marian S(tata, dziecko) = tata dziecko Jan Ela Adam Jan Marian null Marian Jan Iloczyn kartezjański R S ma 12 krotek i cztery atrybuty: R.mama, R.dziecko, S.tata, S.dziecko.
Algebra relacji - przykład Złaczenie warunkowe R W S, dla warunku W=(R.dziecko= Ela or S.tata= Adam ), daje R.mama R.dziecko S.tata S.dziecko Ala Ela Jan Ela Ala Ela Adam Jan Ala Ela Marian null Ala Ela Marian Jan Ala Ela Adam Jan Ela Jan Adam Jan Ola null Adam Jan
Algebra relacji - przykład Niech Q relacja z poprzedniego przykładu, Q = R W S, dla W = (R.dziecko = Ela or S.tata = Adam ). Rozpatrzmy σ B= Ela and not C = Jan (ρ T (A,B,C) (π R.mama,R.dziecko,S.tata (Q))). A B C Ala Ela Adam Ala Ela Marian Ala Ela Marian Ala Ela Adam
Więzy w algebrze relacji W algebrze relacji możemy wyrażać ograniczenia, które chcemy nałożyć na relacje. Warunki te będa nam towarzyszyć później podczas projektowania schematu bazy danych.
Więzy w algebrze relacji Napis R = wyraża, że relacja R nie zawiera krotek. Napis R S wyraża, że każda krotka z R znajduje się też w S. Fakt. R S wtedy i tylko wtedy, gdy R \ S =.
Więzy integralności referencyjnej Więzy integralności referencyjnej wyrażaja, że wartość, która przyjmuje pewien atrybut danej relacji musi pojawić się też jako wartość innego atrybutu w innej relacji. Warunek taki możemy opisać jako π A (R) π B (S). Bardziej ogólnie możemy wyrażać zawieranie pomiędzy zbiorami atrybutów: π A,B,C (R) π D,E,F (S).
Więzy integralności referencyjnej Każdy pracownik otrzymuje pensję: π pesel (Pracownicy) π pesel (Pensje). Każdy ksiażka ma autora, który występuje w relacji Pisarze: π nazwisko_autora (Ksiazki) π nazwisko (Pisarze).
Więzy zależności funkcyjnej Więzy zależności funkcyjnej wyrażaja, że wartość danej grupy atrybutów jest jednoznacznie wyznaczona przez inne atrybuty. Przykłady: Np. numer pesel wyznacza jednoznacznie inne atrybuty osoby. Atrybut wiek zależy od daty urodzenia i aktualnej daty.
Więzy zależności funkcyjnej Niech R(A, B, C) będzie dana relacja. Jeśli wartość C zależy funkcyjnie od A i B, to możemy wyrazić to następujaco: σ S.A=R.A S.B=R.B S.C R.C (R ρ S (R)) =. Jeżeli R1 i R2 to nazwy relacji R oraz C jest zależy funkcyjnie od A i B, to możemy wyraźić to jako σ R1.A=R2.A R1.B=R2.B R1.C R2.C (R1 R2) =.
Więzy klucza Więzy klucza wyrażaja, że wartość danej grupy atrybutów nie możemy być taka sama w dwóch różnych krotkach relacji. Przykłady: Np. nie ma dwóch różnych osób, które maja ten sam numer pesel. Przy danej ulicy nie ma dwóch domów o tych samych numerach.
Więzy klucza Niech R(A, B, C) będzie dana relacja. Więzy klucza dla atrybutu C możemy wyrazić następujaco: σ S.C=R.C (S.A R.A S.B R.B) (R ρ S (R)) =. Jeżeli R1 R2 to nazwy relacji R oraz C jest kluczem to możemy to wyrażić jako σ R1.C=R2.C (R1.A R2.A R1.B R2.B) (R1 R2) =. Jeżeli kluczem jest para atrybutów B i C to możemy to wyrazić jako: σ R1.B=R2.B R1.C=R2.C R1.A R2.A (R1 R2) =.
Więzy dziedziny Więzy dziedziny wyrażaja ograniczenia wartości atrybutów. Np. osoba może mieć tylko płeć mężczyzna lub kobieta : σ plec K plec M (Osoby). Wiek osoby nie może przekroczyć 150 lat: σ wiek 150 (Osoby).
Koniec