Разгледайте http://dev.mysql.com /doc/refman/5.0/en/declare-handler.html
По принцип вие декларирате манипулатор на грешки, който ще извика връщане назад
START TRANSACTION;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
EXIT PROCEDURE;
END;
COMMIT;