ON DELETE CASCADE — это правило внешнего ключа, при котором удаление родительской строки автоматически удаляет связанные дочерние строки. Оно помогает поддерживать целостность данных, когда дочерние записи не имеют смысла без родителя.
Что такое ON DELETE CASCADE?
Подробный ответ
Что делает ON DELETE CASCADE
ON DELETE CASCADE используется вместе с FOREIGN KEY. Если удалить строку в родительской таблице, то все связанные строки в дочерней таблице удалятся автоматически.
Пример
CREATE TABLE orders (
id INT PRIMARY KEY,
user_id INT,
FOREIGN KEY (user_id) REFERENCES users(id)
ON DELETE CASCADE
);Если удалить пользователя из users, то все его заказы из orders тоже удалятся.
Когда это полезно
Такой вариант удобен, когда дочерние записи полностью зависят от родителя, например заказы пользователя, комментарии к записи или элементы корзины.
О чём важно помнить
Нужно быть осторожным: если случайно удалить родительскую запись, можно потерять много связанных данных. Поэтому ON DELETE CASCADE используют только там, где это действительно логично.
Как ответить на собеседовании
Я бы объяснил так: ON DELETE CASCADE автоматически удаляет дочерние записи при удалении родительской строки. Это удобно для зависимых данных, но использовать его нужно аккуратно, чтобы случайно не удалить больше, чем планировалось.
Оцени свой прогресс