Внешние ключи — это функция целостности данных в реляционных (и SQL) базах данных. Внешний ключ — это набор атрибутов в реляционной таблице, на который действует ограничение ссылочной целостности. Ограничение ссылочной целостности требует, чтобы значения атрибутов внешнего ключа в одной таблице A должны совпадать с соответствующими значениями в некоторой указанной таблице B (которая иногда может быть той же таблицей, что и A).