Назад к вопросам
Junior
98
questionbank
Что такое внешний ключ?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Внешний ключ (FOREIGN KEY) — это ограничение целостности данных в реляционных базах данных. Он создает связь между двумя таблицами, ссылаясь на первичный ключ (или другой внешний ключ) в другой таблице.
Основные функции внешнего ключа:
- Обеспечение целостности ссылочных данных: Гарантирует, что значения во внешнем ключевом поле существуют в ссылаемом поле родительской таблицы. Это предотвращает "висячие" записи.
- Установление связей между таблицами: Определяет, как данные из разных таблиц связаны между собой.
- Каскадные действия: Позволяет автоматически выполнять действия (удаление или обновление) в дочерней таблице при изменении данных в родительской таблице.
Пример создания внешнего ключа в SQL:
CREATE TABLE `заказы` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`имя_заказчика` VARCHAR(255),
`идентификатор_продукта` INT,
FOREIGN KEY (`идентификатор_продукта`) REFERENCES `продукты`(`id`)
);
CREATE TABLE `продукты` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`название_продукта` VARCHAR(255),
`цена` DECIMAL(10, 2)
);
В этом примере идентификатор_продукта в таблице заказы является внешним ключом, ссылающимся на id в таблице продукты. Это гарантирует, что каждый заказ будет связан с существующим продуктом.