Przejście do pierwszej części wykładu


Powiązania między tabelami

Tworząc schemat bazy danych należy zaplanować powiązania (związki, relacje w MS Access) między danymi zapisanymi w tabelach. Ze względu na to, że przy projektowaniu bazy danych termin relacja ma znaczenie matematycznej abstrakcji tabeli, używamy terminu powiązanie.

Cele określania powiązań między tabelami:

Dla powiązanych pól muszą być spełnione następujące warunki: Diagram powiązań między tabelami (schemat bazy danych)

W menu "Narzędzia" występuje opcja "Relacje" ("Relationships"), po wybraniu której w osobnym okienku zostaje wyświetlony schemat bazy danych.

Ramki reprezentują tabele. Linie między tabelami reprezentują powiązania (związki) między tabelami. 

Na diagramie jest zaznaczone powiązanie między pismami i sprawami oraz wyświetlone okienko właściwości tego powiązania (okienko "Relacje").

Każde powiązanie między tabelami ma dwie strony. Strona "jeden" jest reprezentowana graficznie symbolem "1" i znajduje się przy tabeli, do której prowadzi odwołanie czyli przy tabeli nadrzędnej. Strona "wiele" jest reprezentowana graficznie symbolem matematycznej "nieskończoności" i znajduje się przy tabeli, z której wychodzi odwołanie czyli przy tabeli podrzędnej.

Każde powiązanie da się sformułować za pomocą dwóch zdań określających związek między odpowiednimi obiektami – w obie strony. Oto pełne wyrażenie schematu przedstawionego powyżej:

  • Każde pismo dotyczy dokładnie jednej sprawy. Z każdą sprawą może być zwiazane wiele pism.
  • Każda sprawa dotyczy dokładnie jednego klienta. Z każdym klientem może być związane wiele spraw.
  • Każdą sprawą zajmuje się dokładnie jeden pracownik. Każdy pracownik może się zajmować wieloma sprawami.

 A teraz pytanie:

Czy jest prawdą, że w programie MS Access schemat bazy danych wyświetla się w oknie "Relacje"?
 

oraz zadanie:

Powiąż wierszami odpowiadające sobie terminy: strona "jeden", tabela podrzędna, klucz główny, strona "wiele", tabela nadrzędna, klucz obcy.

 

Referencyjne więzy spójności (więzy integralności)

Przy definiowaniu powiązania między tabelami należy wybrać opcję "Wymuszaj więzy integralności" ("Enforce Referential Integrity"). Jak już to powiedzieliśmy uprzednio, tabela występująca  w powiązaniu po stronie jeden jest nazywana w Accessie  tabelą nadrzędną, natomiast tabela po stronie wiele tabelą podrzędną.

Typ złączania wierszy

W perspektywach, których definicja jest oparta na powiązaniu między tabelami istotny jest  typ złączania (sprzężenia) określający sposób złączania wierszy z obu tabel. Są trzy typy złączeń - pierwszy z nich jest domyślny.

Teraz proponujemy Zadanie 2.
 


Kwerenda

w MS Access jest to albo

Kwerenda wybierająca

W wyniku wykonania kwerendy wybierającej otrzymuje się tak zwany dynamiczny zestaw wyników, który ma postać tabeli, z tym, że nie jest zapamiętywany na stałe w bazie danych. Jest wyświetlany w postaci arkusza danych tak jak tabela.

Metody tworzenia kwerend:

  1. siatka kwerendy (postać graficzna),
  2. instrukcja SQL,
  3. język VBA.

Metody 2 i 3  będą omówione na dalszych wykładach.
 

Siatka kwerendy

Wynik wykonania kwerendy wybierającej jest arkuszem danych jak dla tabeli.

Typ złączania wierszy można ustalać dla każdej kwerendy wybierającej niezależnie od ustalonego jako domyślny przy definiowaniu powiązania między tabelami w oknie "Relacje" ("Relationships").

Przy tworzeniu kwerendy wybieramy jej typ z menu "Kwerenda" ("Query") - domyślnie: "Kwerenda wybierająca" ("Select Query"). MS Access dostawia odpowiednie, dodatkowe wiersze siatki kwerendy.
 

Kwerenda usuwająca

Kwerenda usuwająca ("Delete Query") powoduje usunięcie wierszy spełniających podane kryteria np.

((Id_pracownika>100 AND Zarobki <1000) OR Id_pracownika<10)

 

Kwerenda dołączająca

Kwerenda dołączająca ("Append Query") powoduje dołączenie wiersza lub wierszy do tabeli np. wstawienie wiersza ("Jan","Kowalski","Kierownik",10000) do tabeli Pracownicy:

Gdybyśmy określili w wierszu "Tabela" ("Table") siatki kwerendy tabelę, to wartości z niej zostałyby wstawione do ustalonej tabeli.
 

Kwerenda aktualizująca

Kwerenda aktualizująca ("Update Query") dokonuje aktualizacji wierszy tabeli np. podniesienie zarobków o 10% wszystkim pracownikom zarabiającym mniej niż 500:

Teraz proponujemy Zadanie 3.
 


Podsumowanie

W wykładzie 2 został przedstawiony interfejs graficzny do relacyjnej bazy danych na przykładzie MS Access. W interfejsie tym tabela ma dwa widoki. Jeden widok jest przeznaczony do projektowania jej schematu (widok projekt). Drugi widok jest przeznaczony do oglądania jej zawartości – zbioru wierszy (widok arkusz danych). W MS Access wiersze nazywają się rekordami. W widoku arkusz danych są wykonywane na tabeli operacje takie jak przeglądanie rekordów, filtrowanie rekordów, wstawianie nowych rekordów, aktualizacja istniejących rekordów, usuwanie rekordów.

W oknie "Relacje" ("Relationships") edytujemy właściwości powiązań między tabelami określając więzy spójności referencyjnej oraz zasady złączeń rekordów.

W MS Access perspektywy nazywają się kwerendami wybierającymi. Oprócz tego są kwerendy przeznaczone do wykonywania operacji na danych jak np. kwerenda dołączająca rekordy, kwerenda aktualizująca rekordy i kwerenda usuwająca rekordy. Także kwerendy w MS Access mają swoje dwa widoki: projekt i arkusz danych. Widok projekt jest przeznaczony do definiowania kwerend – określania tabel, których dotyczą, warunków na dane i rodzaju operacji wykonywanych na danych. Widok arkusz danych jest przeznaczony do oglądania zbioru wierszy czyli rekordów będących zawartością kwerendy bądź wykonywania na nich operacji takich jak przeglądanie rekordów, filtrowanie rekordów, wstawianie nowych rekordów, aktualizacja istniejących rekordów, usuwanie rekordów.

Powiąż w pary odpowiadające sobie terminy: kolumna, kwerenda wybierająca, wiersz, klucz podstawowy, powiązanie, rekord, klucz główny, klucz zewnętrzny, klucz obcy, integralność, spójność referencyjna, pole, perspektywa, relacja.

Teraz proponujemy Zadanie 4.


Słownik

MS Access - program firmy Microsoft dostarczający graficznego interfejsu do relacyjnej bazy danych. Przy pomocy tego interfejsu projektuje się schematy tabel (w widoku projekt tabeli) oraz wyświetla się zawartość tabeli oraz wykonuje się operacje na jej wierszach (w widoku arkusz danych tabeli).
projekt tabeli - interfejs ekranowy w MS Access umożliwiający edycję schematu tabeli.
arkusz danych - interfejs ekranowy w MS Access umożliwiający wyświetlanie zawartości tabeli oraz wykonywanie operacji na jej wierszach.
okno bazy danych - okno programu MS Access udostępniające wszystkie obiekty bazy danych MS Access.
autonumer - typ danych wartości liczbowych zwiększanych automatycznie dla każdego nowego rekordu lub generowanych losowo; używany dla pól klucza głównego i czasem jednoznacznego.
odnośnik - definiowana lista dopuszczalnych wartości dla danego pola w tabeli; albo określa się wartości z innych pól w bazie danych albo bezpośrednio podaje się dopuszczalne wartości.
indeks - struktura danych określana dla pola lub zbioru pól tabeli umożliwiająca szybkie wyszukiwanie rekordów na podstawie wartości tego pola lub pól.
powiązanie między tabelami (związek, relacja) - związek między rekordami dwóch tabel; jeden rekord odwołuje się do powiązanego z nim drugiego rekordu np. rekord pracownika zawiera odwołanie do rekordu działu, w którym jest zatrudniony pracownik.
diagram powiązań - graficzna reprezentacja powiązań między tabelami bazy danych. Ramki reprezentują tabele. Linie między tabelami reprezentują powiązania (związki) między tabelami.
spójność referencyjna (integralność) - gwarancja, że gdy wiersze tabeli A odwołują się do wierszy tabeli B (tabela podrzędna A jest powiązana z tabelą nadrzędną B) to dla każdego wiersza w tabeli A istnieje powiązany z nim wiersz w tabeli B.
typ złączania - sposób złączania wierszy z dwóch tabel określający co robić z wierszami jednej tabeli, które nie mają odpowiedników wśród wierszy w drugiej tabeli. Przy złączaniu wewnętrznym bierze się pod uwagę tylko wiersze, dla których istnieją odpowiadające im wiersze w drugiej tabeli. Przy złączaniu zewnętrznym bierze się pod uwagę również wiersze, dla których nie istnieją odpowiadające im wiersze w drugiej tabeli.
kwerenda - albo perspektywa (kwerenda wybierająca) albo instrukcja operowania danymi jak np. tworzenie tabeli, aktualizacja wierszy tabeli.
siatka kwerendy - interfejs graficzny MS Access ułatwiający zdefiniowanie kwerendy.
 


Zadania 1,2,3 i 4



Strona przygotowana przez Lecha Banachowskiego - 10/25/03 .