Встречается на собеседованиях • сегодня

В чем разница в логическом результате работы между DELETE и TRUNCATE

DELETE — это DML-операция, которая удаляет записи построчно с возможностью фильтрации через WHERE. Можно откатить через ROLLBACK. Срабатывают триггеры, возвращается количество удаленных строк.

TRUNCATE — DDL-операция, которая удаляет все данные из таблицы мгновенно (сбрасывает таблицу). Нельзя использовать WHERE, нельзя откатить, не срабатывают триггеры. Быстрее DELETE, так как не пишет в лог изменений.

Пример:

sql
DELETE FROM users WHERE id = 1; -- удалит только 1 запись
TRUNCATE TABLE users; -- очистит всю таблицу
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы