| Termin | Definicja |
|---|---|
| Klucz obcy | Klucz obcy to ograniczenie wymuszające, aby wartość w kolumnie odpowiadała istniejącemu rekordowi w powiązanej tabeli. Jak działa klucz obcy w relacyjnej bazie danychKlucz obcy (ang. foreign key) jest ograniczeniem integralności referencyjnej w relacyjnej bazie danych. Łączy kolumnę albo zestaw kolumn w jednej tabeli z kluczem głównym lub innym kluczem objętym ograniczeniem unikalności w tabeli powiązanej. Wartość zapisana po stronie klucza obcego musi odpowiadać istniejącej wartości po stronie referencji, chyba że kolumna dopuszcza wartość Przykładem jest tabela Integralność referencyjna a operacje na rekordachKlucz obcy kontroluje nie tylko dodawanie nowych wierszy. Ma również znaczenie podczas modyfikowania wartości identyfikatora oraz usuwania rekordu, do którego odwołują się inne tabele. Jeżeli tabela Sposób reakcji na zmianę lub usunięcie rekordu określa się przy tworzeniu ograniczenia. Typowa opcja Projektowanie kolumn i relacji między tabelamiKolumna klucza obcego powinna mieć typ danych zgodny z kolumną, do której się odwołuje. Jeżeli identyfikator nadrzędny jest liczbą całkowitą określonego rodzaju, identyfikator zależny powinien korzystać z odpowiednio zgodnego typu i zakresu. Sama nazwa kolumny nie tworzy relacji. Potrzebne jest jawne ograniczenie zdefiniowane w schemacie bazy danych. W zależności od silnika można utworzyć je podczas definiowania tabeli albo później za pomocą instrukcji Relacja może obejmować jedną kolumnę lub kilka kolumn tworzących klucz złożony. W drugim przypadku klucz obcy musi wskazywać na odpowiadający mu klucz złożony, a wartości wszystkich kolumn powinny tworzyć istniejącą kombinację. W praktyce projektant powinien rozstrzygnąć, czy powiązanie jest obowiązkowe, czy opcjonalne, czy dopuszczalne są wielokrotne rekordy zależne oraz co ma się wydarzyć po usunięciu danych nadrzędnych. Indeks na kolumnie klucza obcego może poprawić wykonywanie złączeń i sprawdzanie rekordów zależnych, choć sposób indeksowania zależy od silnika oraz charakteru zapytań. Rozpoznawanie problemów z kluczem obcymBłąd naruszenia klucza obcego zwykle oznacza, że aplikacja próbuje zapisać odwołanie do nieistniejącego rekordu albo usunąć rekord, który nadal jest używany w tabeli zależnej. Podczas analizy należy sprawdzić kolejność operacji, wartości identyfikatorów, transakcję oraz to, czy rekord nadrzędny został zatwierdzony i jest widoczny w zakresie tej samej operacji. Nie powinno się usuwać ograniczenia wyłącznie po to, aby ukryć błąd zapisu, ponieważ pozwala to powstawać niespójnym danym. W środowisku użytkownika problem może ujawnić się jako komunikat aplikacji o niemożności zapisania formularza, usunięcia elementu albo zmiany powiązania. Sama obecność takiego komunikatu nie świadczy o uszkodzeniu dysku lub pamięci komputera; przyczyną jest zazwyczaj reguła zapisana w schemacie bazy danych albo błąd logiki aplikacji. Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów i komputerów PC, w tym diagnostykę problemów z oprogramowaniem działającym na komputerze użytkownika. W przypadku klucza obcego właściwa diagnoza wymaga jednak sprawdzenia schematu, zapytań i logów aplikacji, a nie tylko wymiany podzespołów. |