http://dev.mysql.com/doc/refman /5.1/bg/truncate-table.html
Съгласно този URL адрес, от MySQL 5.1.32, TRUNCATE TABLE
е DDL и НЕ DML като DELETE. Това означава, че TRUNCATE TABLE
ще предизвика неявно COMMIT
в средата на транзакционен блок. Така че, използвайте DELETE FROM
на таблица, която трябва да изпразните вместо TRUNCATE TABLE
.
Дори DELETE FROM tblname;
може да се върне назад. Може да отнеме известно време за връщане назад, така че се уверете, че InnoDB е правилно настроен, за да обработва времето за транзакция за такива възможности за връщане назад.