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
,
będą plikami tych rekordów.
Mówimy, że między rekordami typów R i S istnieje powiązanie, jeśli określone są odwzorowania:
oraz
Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych:
- jeden do jednego, gdy wartości odwzorowań
oraz
są zbiorami jednoelementowymi.
- jeden do wielu, gdy wartość tylko jednego z odwzorowań jest zbiorem jednoelementowym.
- wiele do wielu, gdy odwzorowania
oraz
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.
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.
Inaczej, musielibyśmy stworzyć tabelę postaci
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.
(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.