Do utworzenia czego niezbędne jest zdefiniowanie klucza obcego?
Źle. To zbyt wąskie - klucz obcy realizuje przede wszystkim 1..n.
Źle. Transakcja to operacja na danych, nie wymaga klucza obcego.
Źle. Klucz podstawowy definiuje się niezależnie od obcego.
Dobrze. Klucz obcy realizuje powiązanie między tabelami.
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).