Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 47
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/platne/serwer318421/public_html/zeszyt.jedlikowski.com/wp-content/plugins/latex/latex.php on line 49
Integralność (spójność) relacyjnych baz danych
1. Integralność semantyczna - jeżeli wartości danych spełniają wcześniej zdefiniowane i nałożone ograniczenia (dopuszczalny typ, zakres długości, format), wówczas mówimy, że zachowana jest integralność semantyczna relacyjnej bazy danych.
W ujęciu formalnym integralność semantyczna jest zachowana, jeżeli dane należą do zdefiniowanej wcześniej dziedziny.
2. Integralność encji jest zachowana, jeśli każda tabela posiada klucz główny, a jego wartości w ramach tabeli są unikatowe i różne od wartości NULL (to zapewni nam, że krotki w tabeli nie będą się powtarzać). Integralność encji jest charakterystyczna dla modelu relacyjnego baz danych.
3. Integralność referencyjna jest zachowana, jeśli każda wartość klucza obcego jest równa jakiejś wartości klucza głównego w powiązanej tabeli nad rzędnej lub ewentualnie jest równa NULL (patrz: sposoby usuwania danych z tabel).
4. Węzły ogólne - dodatkowe warunki poprawności danych określane przez użytkowników lub administratorów albo projektantów baz danych.
Integralność referencyjna relacyjnych baz danych pociąga za sobą konieczność określenia reguły postępowania w przypadku usuwania rekordu (wiersza/krotki) z tabeli powiązanej, co mogłoby unieważnić niektóre wartości kluczy obcych w tabelach z nią powiązanych:
- ograniczone usuwanie (restricted) - podejście ostrożne - nie dopuszcza do usuwania rekordu nadrzędnego, jeśli istnieją rekordy podrzędne (przykład: przy tym sposobie usuwania danych nie uda się usunąć danych z tabeli
tbl_klient
itbl_klient_dane
danych klienta, który przynajmniej raz wypożyczył auto). - kaskadowe usuwanie (cascade) - podejście ufne - przy usuwaniu rekordu nadrzędnego usuwa także rekordy podrzędne (przykład: jeśli usuniemy z tabeli nadrzędnej dane klienta, to z tabel podrzędnych (
tbl_wypozyczenia
,tbl_zwroty
,tbl_rozliczenia
,tbl_faktury
) zostaną usunięte wszystkie powiązane rekordy). - izolowane usuwanie (isolated) - podejście wyważone - usuwa się jedynie rekord nadrzędny, nieważne wartości kluczy obcych ulegają zastąpieniu przez
NULL
(przykład: jeśli z tabeli nadrzędnej usuniemy dane klienta, to w powiązanych z nią tabelach podrzędnych wartość klucza obcego zostanie ustalona naNULL
).
Rodzaje związków (relacji) pomiędzy relacjami (tabelami)
- 1-1: każdemu rekordowi (krotce) z tabeli nadrzędnej odpowiada dokładnie jeden rekord (jedna krotka) w powiązanej z nią tabeli podrzędnej i odwrotnie
- 1-∞ (jeden-do-wielu): każdemu rekordowi (krotce) z tabeli nadrzędnej może odpowiadać wiele rekordów (krotek) w powiązanej z nią tabeli podrzędnej, ale każdemu rekordowi (krotce) z tabeli podrzędnej musi odpowiadać dokładnie jeden rekord w powiązanej z nią tabelą nadrzędną (przykład: drzewo ma wiele liści, ale liść przynależy do tylko jednej gałęzi; rodzice mogą mieć wiele dzieci, ale każde dziecko ma tylko jednych rodziców).
- ∞-∞ (wiele-do-wielu): każdemu rekordowi (krotce) z tabeli nadrzędnej może odpowiadać wiele rekordów w powiązanej z nią tabeli podrzędnej i odwrotnie (przykład: na każdym przystanku może zatrzymywać się wiele autobusów, a autobus może zatrzymywać się na wielu przystankach; nauczyciel ma wielu uczniów, a uczeń ma wielu nauczycieli)
UWAGA: w systemie zarządzania relacyjną bazą danych nie można stworzyć bezpośrednio relacji (związku) ∞-∞ pomiędzy tabelami. W takim przypadku należy zastosować dodatkową tabelę sprzęgającą.
Podstawy matematyczne algebry relacji
(1)
(2)
Dowolny podzbiór tych uporządkowanych trójek jest relacją.
Zbiór A - nazwiska, zbiór B - imiona, zbiór C - płeć:
Każdy operator bierze jeden lub więcej relacji jako argument i produkuje jako wynik jedną relację.
- selekcja - polega na wybraniu z relacji (tabeli) krotek (rekordów) spełniających określone warunki, np. wybraniu z tabeli
tbl_uczniowie
bazy danychszkoła
rekordów dotyczących uczniów klasy3Tib
w roku szkolnym2014/15
- projekcja (rzut) - polega na wybraniu z relacji (tabeli) zawartości określonych atrybutów (kolumn), np. z bazy danych
szkoła
z tabelitbl_uczniowie
zawartość kolumnImię
,Nazwisko
,PESEL
,Nr_telefonu
.
UWAGA: w praktyce najczęściej wykorzystuje się projekcję połączoną z selekcją, np. wybieramy z tabelitbl_uczniowie
zawartość kolumnImię
,Nazwisko
,Nr_telefonu
dotyczących uczniów klasy3Tib
. - złączenie - w wyniku tej operacji powstaje relacja (tabela) składająca się ze wszystkich możliwych krotek znajdujących się w obu złączonych relacjach mających tę samą wartość wspólnego atrybutu tych dwóch relacji (wartość klucza obcego jest równa wartości klucza głównego z drugiej relacji). Są różne rodzaje złączeń: wewnętrzne, zewnętrzne, lewe, prawe... (patrz: późniejsze lekcje)
- iloczyn kartezjański (w praktyce bardzo rzadko wykorzystywany) - w wyniku działania tego operatora powstaje relacja zawierająca wszystkie możliwe kombinacje krotek z obu tabel.
- suma - służy do połączenia relacji o takich samych atrybutach. W wyniku tej operacji powstanie relacja składająca się ze wszystkich krotek, które występują w obu wskazanych relacjach.
- różnica - służy do operacji na relacjach zawierających takie same atrybuty. Ważna jest tu kolejność relacji. W wyniku tej operacji powstanie relacja składająca się ze wszystkich krotek występujących w pierwszej relacji, a niewystępujących w drugiej relacji.
- przecięcie - służy do połączenia relacji o takiej samej strukturze. W wyniku przecięcia otrzymamy relację, która będzie zawierać rekordy, w których atrybuty należą do obu relacji.
Wady relacyjnych baz danych
- W procesie modelowania tracimy informację o tym, że w świecie rzeczywistym istnieją dwa niezależne obiekty.
Jest to konsekwencja jednej z głównych zasad relacyjnego modelu baz danych, która mówi, że w relacji nie mogą wystąpić dwie takie same krotki. A zatem przy ustalonym zestawie atrybutów nie jest możliwe wpisanie dwóch rekordów o tej samej wartości. Rozwiązaniem tego problemu jest konieczność zwiększenia liczby atrybutów. - sztuczny język opisu rzeczywistości - są nim dwuwymiarowe tabele
- trudności w przechowywaniu informacji zmiennych w czasie
- trudności w przechowywaniu informacji niepełnej
- problemy z przechowywaniem dużych obiektów
Pozdro od wywrota
kox