Вопрос31
Осталось:

Что такое FOREIGN KEY и как он обеспечивает целостность данных?

Образцовый ответ

Показывать ответ по умолчанию

FOREIGN KEY (внешний ключ) — это ограничение, которое устанавливает связь между столбцом или набором столбцов в одной таблице и столбцом или столбцами в другой таблице (обычно первичным ключом).

Он обеспечивает ссылочную целостность, гарантируя, что значения в столбце внешнего ключа соответствуют существующим значениям в связанной таблице.

Как обеспечивается целостность данных:

  • Ограничивается вставка некорректных данных Невозможно вставить значение в столбец внешнего ключа, если такого значения нет в связанной таблице.

  • Ограничивается удаление связанных записей Невозможно удалить запись из родительской таблицы, если на нее ссылаются записи в дочерней таблице, без дополнительных действий.

Пример внешнего ключа:

MySQL
CREATE TABLE Employees (
    EmployeeID INT PRIMARY KEY,
    Name VARCHAR(100),
    DepartmentID INT,
    FOREIGN KEY (DepartmentID) REFERENCES Departments(DepartmentID)
);