Внешний ключ в реляционной базе данных — это столбец или набор столбцов в таблице, поля которого ссылаются на первичный ключ. 2 Он создаёт связи между таблицами и обеспечивает целостность данных. 2
Вторичный ключ — это структура из одного или более столбцов, которые помогают извлекать одну или более строк одной и той же таблицы. 1 Вторичный ключ не обязательно должен быть уникальным и используется для поиска строк в той же таблице, в которой он определён. 1
Таким образом, основное отличие в том, что внешний ключ устанавливает связи между таблицами, а вторичный ключ используется для поиска строк внутри одной таблицы.
Ещё можно сказать, что внешний ключ присутствует в дочерней таблице, а вторичный ключ — в родительской. 15