Ifølge SQL-standarden skal en fremmednøgle referere til enten den primære nøgle eller en unik nøgle i den overordnede tabel. Hvis den primære nøgle har flere kolonner, skal den fremmede nøgle have samme antal og rækkefølge af kolonner. Derfor refererer den fremmede nøgle til en unik række i den overordnede tabel; der kan ikke være nogen dubletter.
Om din kommentar:
Hvis T.A
er en primær nøgle, så nej, du kan ikke have nogen dubletter. Enhver primær nøgle skal være unik og ikke-nul. Derfor, hvis den underordnede tabel har en fremmednøgle, der refererer til den overordnede primære nøgle, skal den matche en ikke-nul, unik værdi og refererer derfor til nøjagtig én række i den overordnede tabel. I dette tilfælde kan du ikke lave en underordnet række, der refererer til flere overordnede rækker.
Du kan opret en underordnet række, hvis fremmednøglekolonne er NULL, i hvilket tilfælde den ikke refererer til nogen række i den overordnede tabel.