25. Modelowanie bazy danych - rodzaje połączeń relacyjnych, gotowe opracowania


25. Modelowanie bazy danych - rodzaje połączeń relacyjnych, klucze.

Niech dane będą dwa typy rekordów (rekord to pojedynczy wpis do bazy) R i S i niech 0x01 graphic
, 0x01 graphic
będą plikami tych rekordów.

0x01 graphic

0x01 graphic

Mówimy, że między rekordami typów R i S istnieje powiązanie, jeśli określone są odwzorowania:

0x01 graphic
oraz

0x01 graphic

Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych:

- jeden do jednego, gdy wartości odwzorowań 0x01 graphic
oraz 0x01 graphic
są zbiorami jednoelementowymi.

- jeden do wielu, gdy wartość tylko jednego z odwzorowań jest zbiorem jednoelementowym.

- wiele do wielu, gdy odwzorowania 0x01 graphic
oraz 0x01 graphic
nie spełniają własności z dwóch powyższych punktów.

1. Połączenie jeden do wielu jest najczęściej wykorzystywanym połączeniem w

relacyjnych bazach danych.

0x01 graphic

0x01 graphic

Obydwie tabele są połączone polem „id. zamówienia”, a poprzez to połączenie dane

zamówienia mogą być z łatwością modyfikowane oraz nie pojawiają się pola puste oraz

duplikowane.

2. Połączenie jeden do jednego - głównym ich celem jest stworzenie związku pomiędzy

tabelą, która posiada dane ważne tylko dla danego rekordu, a inną tabelą. Połączenie jeden do jeden zaoszczędza nam potrzeby tworzenia pól, które nie będą używane dla pewnych rekordów.

0x01 graphic

Inaczej, musielibyśmy stworzyć tabelę postaci

0x01 graphic

gdzie większość rekordów byłaby polem NULL.

3. Połączenie wiele do wielu jest najbardziej złożonym typem połączeń, ponieważ oprócz

dwóch tabel zawierających dane potrzebujemy także tabeli która będzie łączyła ich cechy

wspólne.

0x01 graphic

0x01 graphic

(ze strony piosenki może się zdarzyć, że wykonuje ją kilku wykonawców)

Klucz obcy - jest to rekord łączący dwie tabele, który zapewnia, że dane przechowywane w tabelach są jednoznaczne. Klucz obcy tworzy się uwspólniając kolumny w dwóch tabelach.

Klucz główny (ang. Primary Key) - oznacza wybrany zestaw atrybutów encji, jednoznacznie identyfikujący każdą krotkę tej relacji. Kluczem głównym może być dowolny klucz potencjalny, ale często stosuje się rozwiązanie polegające na utworzeniu specjalnego atrybutu, którego wartości domyślne pobierane są z sekwencji tak, aby zapewnić unikalność klucza.



Wyszukiwarka