rebada-4.pdf

(295 KB) Pobierz
Relacyjne bazy danych dla praktyków
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Relacyjne bazy danych
dla praktyków
SPIS TREŒCI
KATALOG KSI¥¯EK
Autor: C.J. Date
T³umaczenie: Marek Pêtlicki
ISBN: 83-246-0101-5
Tytu³ orygina³ u: Database in Depth
Format: B5, stron: 280
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Wszystkie tajniki relacyjnego modelu danych
Dowiedz siê, czym s¹ krotki i relacje
Poznaj algebrê relacji i zasady normalizacji danych
Zaprojektuj efektywne schematy relacji i zaimplementuj je w bazie
Relacyjne bazy danych spotykamy niemal w ka¿dej aplikacji komputerowej, czêsto
nawet nie zdaj¹c sobie z tego sprawy. Wiemy, ¿e w oparciu o nie buduje siê aplikacje
korporacyjne, witryny internetowe i inne rozbudowane systemy informatyczne. Jednak
to nie wszystko — bazy danych s¹ wszêdzie — nawet cyfrowy aparat fotograficzny
posiada bazê danych, któr¹ wykorzystuje przy doborze parametrów ekspozycji.
Wszystkie nowoczesne systemy zarz¹dzania bazami opieraj¹ siê na modelu relacyjnym,
sformu³owanym w 1969 roku przez E.F. Codda. Znajomoœæ teorii relacji okazuje siê
przydatna nie tylko twórcom takich systemów. Programiœci korzystaj¹cy z baz danych
i administratorzy takich baz równie¿ powinni posiadaæ tak¹ wiedzê, aby w pe³ni
wykorzystaæ mo¿liwoœci, jakie oferuje im model relacyjny.
Ksi¹¿ka „Relacyjne bazy danych dla praktyków” to szczegó³owe omówienie modelu
relacyjnego przeznaczone dla u¿ytkowników takich systemów. Nie opisuje konkretnych
produktów — przedstawia wszystkie tajniki teorii relacyjnej i wskazuje mo¿liwoœci
wykorzystania tej wiedzy w codziennych zadaniach. Autor ksi¹¿ki Chris Date, znany
autorytet z dziedziny baz danych, przedstawi Ci koncepcje relacyjne, teoriê zbiorów,
ró¿nice pomiêdzy modelem a implementacj¹, algebrê relacyjn¹ oraz zagadnienia
normalizacji danych.
Podstawy modelu relacyjnego
Skalarne i nieskalarne typy danych
Krotki i relacje pomiêdzy nimi
Zmienne relacyjne i predykaty
Podstawy algebry relacji
Ograniczenia w bazach danych
Postaci normalne
Teoria projektowania baz danych
Implementacja modelu relacyjnego
Dziêki wiadomoœciom zawartym w tej ksi¹¿ce sprawniej i efektywniej wykorzystasz
mo¿liwoœci wspó³czesnych systemów zarz¹dzania bazami danych.
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
249617782.003.png 249617782.004.png 249617782.005.png 249617782.006.png
Spis treści
Słowo wstępne .............................................................................................................. 9
Przedmowa ................................................................................................................... 11
1. Wprowadzenie ............................................................................................................. 17
Uwaga na temat terminologii
18
Zasady, nie produkty
19
Podstawy oryginalnego modelu
20
Model a implementacja
27
Własności relacji
29
Relacje i zmienne relacyjne
32
Wartości i zmienne
33
Podsumowanie
34
Ćwiczenia
35
2. Relacjei typy ................................................................................................................ 39
Porównania wartości oparte na dziedzinie danych
40
Atomowość wartości danych
44
Czym jest typ?
47
Typy skalarne i nieskalarne
49
Podsumowanie
51
Ćwiczenia
52
3. Krotkii relacje .............................................................................................................. 55
Czym jest krotka?
55
Kilka ważnych konsekwencji
57
Czym jest relacja?
59
Dalsze konsekwencje
60
Dlaczego relacja nie może zawierać zduplikowanych krotek
61
Dlaczego nie należy stosować NULL-i
66
TABLE_DUM i TABLE_DEE
69
Podsumowanie
70
Ćwiczenia
70
5
249617782.001.png
4. Zmienne relacyjne ....................................................................................................... 73
Operacje modyfikujące
73
Klucze kandydujące
75
Klucze obce
77
Perspektywy
78
Zmienne relacyjne i predykaty
83
Dalsze uwagi na temat relacji i typów
86
Podsumowanie
88
Ćwiczenia
89
5. Algebra relacyjna .........................................................................................................91
Własność domknięcia
93
Operatory oryginalne
95
Wyliczanie wyrażeń SQL
102
Rozszerzenie i podsumowanie
103
Grupowanie i rozgrupowanie
107
Przekształcanie wyrażeń
109
Porównania relacyjne
111
Przypisanie relacyjne
114
Operator ORDER BY
115
Podsumowanie
117
Ćwiczenia
117
6. Ograniczenia ..............................................................................................................123
Ograniczenia oparte na typach
123
Ograniczenia baz danych
126
Transakcje
129
Dlaczego kontrola ograniczeń baz danych musi być natychmiastowa
130
Czy niektóre kontrole nie powinny jednak być odłożone?
132
Ograniczenia i predykaty
134
Różne uwagi
136
Podsumowanie
138
Ćwiczenia
139
7. Teoria projektowania baz danych ............................................................................ 143
Rola teorii projektowej
144
Zależności funkcyjne i postać normalna Boyce’a i Codda
146
Zależności złączeniowe i piąta postać normalna
151
Dwie zalety normalizacji
158
Ortogonalność
161
Kilka uwag o projekcie fizycznym
164
Podsumowanie
165
Ćwiczenia
167
6 |
Spis treści
8. Co to jest model relacyjny? ........................................................................................ 171
Model relacyjny zdefiniowany
172
Podstawowe cele modelu relacyjnego
175
Wybrane reguły związane z bazami danych
176
Model relacyjny a inne modele danych
177
Co zostało do zrobienia
180
Podsumowanie
184
Ćwiczenia
185
A Nieco logiki ................................................................................................................ 189
Propozycje
189
Predykaty
191
Kwantyfikacja
192
Zmienne wolne i związane
194
Więcej o kwantyfikacji
195
Ograniczenia baz danych
199
Zapytania
201
Równoważności
202
Podsumowanie
203
B .................................................................................................................................... 205
Algebra relacyjna i operatory modyfikujące
Baza danych dostawców i części zamiennych
206
CRozwązania ćwiczeń ............................................................................................... 207
Rozdział 1. Wprowadzenie
207
Rozdział 2. Relacje i typy
212
Rozdział 3. Krotki i relacje
218
Rozdział 4. Zmienne relacyjne
225
Rozdział 5. Algebra relacyjna
230
Rozdział 6. Ograniczenia
244
Rozdział 7. Teoria projektowania baz danych
251
Rozdział 8. Co to jest model relacyjny?
259
Skorowidz .................................................................................................................. 267
Spis treści |
7
ROZDZIAŁ 4.
Zmienne relacyjne
W rozdziale 1. poznaliśmy pojęcie zmiennej relacyjnej, której wartości są relacjami. To wła-
śnie zmienne relacyjne powstają w wyniku działania operacji INSERT, DELETE czy UPDATE.
Dowiedzieliśmy się też, że INSERT, DELETE oraz UPDATE są odpowiednikami relacyjnych
operacji przypisania. Przypominam, że jeśli R jest zmienną relacyjną, a r jest relacją, która ma
być przypisana R , wtedy R i r muszą być zgodnego typu relacyjnego. Druga ważna informa-
cja to taka, że nagłówki , zawartość , atrybuty , krotki , liczność i stopień zdefiniowane formalnie na
potrzeby relacji (rozdział 3.) mają zastosowanie również do zmiennych relacyjnych. Nadszedł
czas, aby przyjrzeć się bliżej tym zagadnieniom. Jako podstawę do rozważań wykorzystam
następujące definicje relacji z bazy dostawców i części zamiennych napisane w języku
Tutorial D:
VAR S BASE RELATION
{SNO SNO, SNAME NAME, STATUS INTEGER, CITY CHAR}
KEY {SNO};
VAR P BASE RELATION
{PNO PNO, PNAME NAME, COLOR COLOR, WEIGHT WEIGHT, CITY CHAR }
KEY {PNO};
VAR SP BASE RELATION
{SNO SNO, PNO PNO, OTY OTY}
KEY {SNO, PNO}
FOREIGN KEY {SNO} REFERENCES S
FOREIGN KEY {PNO} REFERENCES P;
Operacje modyfikujące
Pierwsze ważne spostrzeżenie dotyczy przypisania. Niezależnie od zastosowanej składni
przypisanie relacyjne jest operacją na poziomie zbiorów. W rzeczywistości wszystkie operacje
zdefiniowane w modelu relacyjnym odbywają się na poziomie zbiorów, do czego wrócimy
w rozdziale 5. Oznacza to, że INSERT dodaje do zmiennej relacyjnej zbiór krotek, DELETE
usuwa ze zmiennej relacyjnej zbiór krotek, natomiast UPDATE modyfikuje zbiór krotek
zmiennej relacyjnej. Często co prawda mówi się, że modyfikuje się jakąś konkretną krotkę,
należy jednak zawsze pamiętać o tym, że:
takie stwierdzenie oznacza, że modyfikowany zbiór krotek ma liczność równą jeden;
aktualizacja zbioru krotek o liczności równej jeden czasem nie jest operacją wykonalną.
73
249617782.002.png
Zgłoś jeśli naruszono regulamin