По стандарту SQL внешний ключ должен ссылаться либо на первичный ключ, либо на уникальный ключ родительской таблицы. Если первичный ключ имеет несколько столбцов, внешний ключ должен иметь одинаковое количество и порядок столбцов. Поэтому внешний ключ ссылается на уникальную строку в родительской таблице; дубликатов быть не может.
Ваш комментарий:
Если T.A
- первичный ключ, то нет, у вас не может быть дубликатов. Любой первичный ключ должен быть уникальным и ненулевым. Поэтому, если дочерняя таблица имеет внешний ключ, ссылающийся на первичный ключ родителя, она должна соответствовать непустому, уникальному значению и поэтому ссылается ровно на одну строку в родительской таблице. В этом случае вы не можете создать дочернюю строку, которая ссылается на несколько родительских строк.
Вы можете создать дочернюю строку, столбец внешнего ключа которой равен NULL, и в этом случае она не ссылается на строку в родительской таблице.