案例1:
CREATE PROCEDURE proc_test() BEGIN DECLARE t_error INTEGER DEFAULT 0;-- 申明一个变量 默认为0 DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1;-- 当SQLEXCEPTION HANDLER捕捉到异常时,设置t_error=1 START TRANSACTION;-- 开始事务 -- 此处写需要执行的操作 INSERT INTO table_test(a,b,c) VALUES ('a','b','c'); UPDATE table_test SET a='a1' WHERE b='b'; IF t_error = 1 THEN ROLLBACK;-- 如果捕获异常则回滚 ELSE COMMIT;-- 否则则提交执行 END IF; SELECT t_error;-- 根据查询的t_error来判断事务执行成功还是失败 END