https://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 е правилно настроен, за да обработва времето за транзакция за такива възможности за връщане назад.