Instrukcja do ćwiczeń laboratoryjnych
BAZY DANYCH
ĆWICZENIE 4 – Tworzenie relacji między tabelami
Ćwiczenie nr 4
Temat: Tworzenie relacji między tabelami
1. Podstawowe pojęcia: relacje, łączenie tabeli, więzy integralności.
2. Wstęp:
Większość systemów baz umożliwia tworzenie relacyjnych baz danych, co oznacza, że można
wykorzystywać dane znajdujące się w kilku tabelach, pozostających w związku ze sobą.
Relacja (sprzężenie) to związek utworzony pomiędzy dwoma tabelami poprzez wspólne pola.
Przykładem może być rejestr wypożyczonych książek: jedna tabela z danymi osobowymi
czytelników, druga to rejestr książek a trzecia tabela zawiera rejestr wypożyczeń, czyli relacje
pomiędzy tabelą czytelnicy i spisem książek (zapobiega to powtarzaniu się danych). Rodzaj
relacji zależy od właściwości powiązanych relacją pól.
a) relacje jeden do jednego
Relacja jeden-do-jednego ma miejsce wówczas, gdy oba powiązane pola są kluczami
podstawowymi lub mają indeksy unikatowe (niepowtarzalne). W relacji jeden-do-jednego
każdy rekord z tabeli A może mieć tylko jeden dopasowany rekord z tabeli B, i tak samo
każdy rekord w tabeli B może mieć tylko jeden dopasowany rekord z tabeli A (np. jeden
czytelnik w bibliotece może wypożyczyć tylko jedną książkę, książka może być
wypożyczona tylko jednemu czytelnikowi). Typ relacji rzadko w bazach spotykany.
b) relacje jeden do wielu
Relacja ta jest tworzona wówczas, gdy tylko jedno z powiązanych pól jest kluczem
podstawowym lub ma indeks unikatowy (niepowtarzalne wartości). Jest to najbardziej
powszechny typ relacji. W relacji jeden-do-wielu rekord tabeli A może mieć wiele
dopasowanych do siebie rekordów z tabeli B, ale rekord w tabeli B, ma tylko jeden
dopasowany rekord w tabeli A (np. jeden czytelnik wypożycza w bibliotece wiele książek).
c) relacje wiele do wielu
Relacja wiele-do-wielu jest połączeniem dwóch relacji jeden-do-wielu za pomocą trzeciej
tabeli, której klucz podstawowy składa się z dwóch pól - kluczy obcych1 z dwóch pozostałych
tabel (np. jeden czytelnik przegląda w bibliotece przed wypożyczeniem wiele książek, książka
jest przeglądana przez wielu czytelników).
d) tworzenie relacji
Tworzenie relacji polega na przeciąganiu pól unikatowych pomiędzy tabelami. Pola
powiązane relacją nie muszą mieć tych samych nazw, ale muszą zawierać ten sam typ danych
(z dwoma wyjątkami) i ten sam rodzaj informacji. Pola typu Liczba muszą mieć tak samo
ustawioną właściwości Rozmiar pola. Wyjątki to: relacja pola typu Autonumerowanie
z polami typu Liczba, których właściwość Rozmiar pola jest ustawiona na wartość Liczba
całkowita długa, oraz jeśli właściwość Rozmiar pola obu tych pól jest ustawiona na wartość
ID replikacji.
1 Klucz obcy to nazwa pola, które w jednej tabeli jest kluczem podstawowym, a w drugiej pełni rolę łącznika pomiędzy tabelami.
Strona 1 z 2
Instrukcja do ćwiczeń laboratoryjnych
BAZY DANYCH
ĆWICZENIE 4 – Tworzenie relacji między tabelami
e) wymuszone więzy integralności
Wymuszone więzy integralności zabezpieczają przed użyciem danych, które nie występują
w powiązanej relacją tabeli np. nie można wypożyczyć książki osobie, która nie jest
zarejestrowana w tabeli Czytelnicy. O takim przypadku system baz informuje stosownym
komunikatem i uniemożliwi przejście do edycji innego rekordu.
Jeżeli użytkownik bazy zaznaczył pole wyboru Wymuszaj więzy integralności to MS Access
udostępnia dwie dodatkowe opcje:
Kaskadowo aktualizuj pola pokrewne - dane w tabeli podrzędnej zostaną
automatycznie uaktualnione po zmianie klucza głównego w tabeli podstawowej.
Kaskadowo usuń rekordy pokrewne - usunięcie rekordu w tabeli podstawowej
powoduje usunięcie rekordów powiązanych w tabeli podrzędnej.
3. Ćwiczenia do samodzielnego wykonania:
Ćwiczenie 3.1.
Utwórz relacje jeden-do-wielu dla tabel Czytelnicy i Wypożyczenia wykorzystując pole Id czytelnika. Wymuś więzy integralności. Zamknij okno tworzenia relacji i zapisz wprowadzone zmiany.
Ćwiczenie 3.2.
Otwórz ponownie okno tworzenie relacji i edytuj relację pomiędzy tabelami Wypożyczenia i Książki. Zaznacz pole wyboru Kaskadowo aktualizuj pola pokrewne. Zamknij okno tworzenia relacji i zapisz wprowadzone zmiany.
Ćwiczenie 3.3.
Utwórz relację jeden-do-wielu pomiędzy tabelami Wypożyczenia i Książki łącząc je polem ID Książki. Zaznacz pole wyboru Kaskadowo aktualizuj pola pokrewne. Zamknij okno tworzenia relacji i zapisz wprowadzone zmiany.
Ćwiczenie 3.4.
Otwórz okno tworzenie relacji i usuń relację pomiędzy tabelami Czytelnicy i Wypożyczenia. Zamknij okno tworzenia relacji.
Ćwiczenie 3.5.
Otwórz okno tworzenie relacji i ponownie utwórz relację jeden-do-wielu dla tabel Czytelnicy i Wypożyczenia wykorzystując pole Id czytelnika. Wymuś więzy integralności. Zamknij okno tworzenia relacji.
Ćwiczenie 3.6.
Utworzyć relacje pomiędzy tabelami wskazanymi przez prowadzącego.
Strona 2 z 2