Первичный ключ — выбранный идентификатор строки: он уникален и не допускает NULL. Уникальные ограничения защищают другие сочетания значений; их в таблице может быть несколько.
Чем отличается первичный ключ от уникального?
Первичный ключ — выбранный идентификатор строки: он уникален и не допускает NULL. Уникальные ограничения защищают другие сочетания значений; их в таблице может быть несколько.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Первичный ключ — выбранный идентификатор строки: он уникален и не допускает NULL. Уникальные ограничения защищают другие сочетания значений; их в таблице может быть несколько.
PRIMARY KEY может состоять из нескольких столбцов, но первичный ключ у таблицы один. UNIQUE не обязательно означает обязательность значения: поведение NULL зависит от СУБД и определения ограничения, поэтому при необходимости добавляют NOT NULL. Например, ID — первичный ключ, а подтверждённый внешний идентификатор — дополнительный уникальный ключ. Оба помогают целостности, но назначение в модели различается. Не путайте ограничение с конкретным физическим типом индекса.