Вы разрешаете пользователям запускать TRUNCATE TABLE ad hoc / willy nilly? Если нет, вместо того, чтобы беспокоиться об использовании триггера, почему бы не обернуть команду TRUNCATE в хранимую процедуру, которая также имеет дело с тем, что триггер сделал бы после завершения усечения? (Но вам, конечно, придется сделать это в обратном порядке.)