Do utworzenia czego niezbędne jest zdefiniowanie klucza obcego?
A. transakcji
Źle. Transakcja to operacja na danych, nie wymaga klucza obcego.
B. klucza podstawowego
Źle. Klucz podstawowy definiuje się niezależnie od obcego.
C. relacji jeden-do-wielu (1..n)
Dobrze. Klucz obcy realizuje powiązanie między tabelami.
D. relacji jeden-do-jednego (1..1)
Źle. To zbyt wąskie - klucz obcy realizuje przede wszystkim 1..n.
Klucz obcy jest niezbędny do utworzenia relacji jeden-do-wielu (1..n) - to on, umieszczony po stronie „wielu”, wskazuje klucz główny tabeli po stronie „jeden”. Dlatego klucz obcy potrzebny jest do relacji 1..n.
Klucz obcy służy do powiązań, a nie do innych celów. Transakcja to mechanizm spójności operacji, klucz PODSTAWOWY identyfikuje rekord, a relację 1..1 też realizuje się kluczem obcym, lecz klasycznym przykładem jego konieczności jest relacja jeden-do-wielu (1..n).