6.4.7 Синтаксис оператора TRUNCATE

TRUNCATE TABLE table_name

В версии 3.23 TRUNCATE TABLE выполняет последовательность "COMMIT ; DELETE FROM table_name". See section 6.4.6 Синтаксис оператора DELETE.

TRUNCATE TABLE имеет следующие отличия от DELETE FROM ...:

  • Эта операция удаляет и воссоздает таблицу, что намного быстрее, чем поочередное удаление строк.
  • Операция является нетранзакционной; если одновременно выполняется транзакция или активная блокировка таблицы, то можно получить ошибку.
  • Не возвращает количество удаленных строк.
  • Пока существует корректный файл `table_name.frm', таблицу можно воссоздать с его с помощью, даже если файлы данных или индексов повреждены.

TRUNCATE является расширением Oracle SQL.