Внешний ключ - это просто поле в одной таблице, которое ссылается на поле ключа в другой таблице.Не обязательно определять поле внешнего ключа как таковое.То есть вам не нужно явно добавлять ограничение FOREIGN KEY ... REFERENCES в таблицу, чтобы он был внешним ключом.Когда вы объединяете две таблицы вместе, первичный ключ родительской таблицы будет установлен равным внешнему ключу дочерней таблицы.Какой бы из них ни был , а не , первичным ключом является внешний ключ.
В отношениях «один ко многим» FK переходит на сторону «многие».Он не может идти в сторону «один», потому что именно здесь идет PK, и определение первичного ключа включает запрещение дубликатов.
Если у вас есть отношение «многие ко многим», вам необходимоПереработайте таблицы, чтобы получить два отношения «один ко многим» и таблицу промежуточного разрешения.