Первичный ключ: Является ли одиночным полем, выбранным конструктором для однозначной идентификации записи в таблице (отношение), не может быть пустым (пустым / неназначенным).
Внешний ключ: Является ли первичный ключ одной таблицей (встречается перекрестная ссылка) в другой таблице .
Вторичный (или альтернативный) ключ: Любое поле в таблице, которое не выбрано ни для одного из двух указанных выше типов.
Надеюсь, это поможет.