W modelu relacyjnym sposób odwzorowania relacji zależy od jej krotności (liczby powiązań między rekordami).
Relacja n..m (wiele-do-wielu) oznacza, że jeden rekord z pierwszej tabeli może być powiązany z wieloma rekordami drugiej tabeli, a jednocześnie jeden rekord z drugiej tabeli może być powiązany z wieloma rekordami pierwszej tabeli. Tego nie da się poprawnie zapisać pojedynczym polem-kluczem obcym w jednej tabeli, bo musiałoby ono przechowywać "wiele wartości" (co łamie zasady poprawnego projektu i utrudnia integralność).
Dlatego tworzy się tabelę pośrednią (łączącą, asocjacyjną), która zawiera co najmniej:
- dwa klucze obce: do tabeli A i do tabeli B,
- często klucz główny złożony z tych dwóch kolumn lub osobny identyfikator,
- ewentualne atrybuty relacji (np. ilość produktu w zamówieniu, data nadania roli użytkownikowi).
Dlaczego pozostałe odpowiedzi są błędne?
- 1..n: wystarczy dodać klucz obcy po stronie "n" wskazujący rekord po stronie "1" (bez tabeli pośredniej).
- n..1: to w praktyce ta sama sytuacja co 1..n, tylko opisana z drugiej strony; również wystarcza klucz obcy po stronie "n".
- 1..1: zwykle wystarcza klucz obcy z ograniczeniem unikalności (UNIQUE) lub scalenie tabel, jeśli ma to sens projektowy.
Wskazówka egzaminacyjna: jeśli w opisie relacji pojawia się "wiele po obu stronach", niemal zawsze oznacza to potrzebę tabeli pośredniej i dwóch kluczy obcych.