Ключевые различия между внешними ключами, ссылающимися на первичный ключ и на столбец с ограничением уникальности, заключаются в следующем:
- Цель: внешний ключ, ссылающийся на первичный ключ, устанавливает связь между таблицами и позволяет извлекать данные из разных таблиц. 2 Внешний ключ, ссылающийся на столбец с ограничением уникальности, обеспечивает ссылочную целостность между родительской и дочерней таблицами, при этом внешний ключ дочерней таблицы будет ссылаться на это поле (поля). 1
- Уникальность: внешний ключ должен ссылаться на уникальное значение в первичном ключе таблицы, на которую он указывает. 2 Уникальность внутри таблицы не является обязательной для внешнего ключа, но он должен ссылаться на уникальное значение в первичном ключе другой таблицы. 2
- Обнуляемость: в зависимости от связи между таблицами внешний ключ допускает нулевые значения. 2 В первичном ключе нулевые значения обычно не допускаются. 2
- Количество: первичный ключ должен быть только один, тогда как уникальных ключей может быть несколько. 1