Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

В чем разница между операторами DELETE и TRUNCATE в SQL?

ПрограммированиеData science+3
Анонимный вопрос
Data Science
  · 3,1 K
Python Middle Developer   · 23 мая 2022  · happypython.ru
Даже не знаю с чего начать вам сей увлекательный рассказ.
DELETE - инструкция, которая позволяет удалить одну, несколько или все строки из таблицы. 
TRUNICATE - удаляет все данные из таблицы
Кроме того, DELETE позволяет использовать условия WHERE которых вы можете указать в каких случаях необходимо произвести удаления, а TRUNICATE вам этого сделать не позволит, WHERE в ней нет.
DELETE - медленнее, TRUNICATE - быстрее ( заметно будет при больших объёмах данных.
DELETE записывает в журнал транзакций каждое удаление
для DELETE требуются права на удаление, а TRUNICATE требует права на изменение таблицы ( ALTER TABLE)
вызов DELETE может активировать триггеры,  а TRUNICATE нет ( читай про журнал транзакций)
DELETE блокирует удаляемую строку (строки) TRUNICATE - блокирует таблицу.
есть еще несколько различий, но они не столь существенные и лично я их даже не помню.
Паблик помощи новичкам в Python (пишем парсеры с фриланс заказов)Перейти на happypython.ru
1 эксперт согласен
Я сталкивался, что если делаешь DETELE, то имеющиеся индексы автоматически перестраиваются (один из факторов его... Читать дальше