mysql存储过程中使用事务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql存储过程中使用事务相关的知识,希望对你有一定的参考价值。
1 DROP PROCEDURE IF EXISTS test_sp1 2 CREATE PROCEDURE test_sp1( ) 3 BEGIN 4 DECLARE t_error INTEGER DEFAULT 0; 5 DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1; 6 7 START TRANSACTION; 8 INSERT INTO test VALUES(NULL, ‘test sql 001‘); 9 INSERT INTO test VALUES(‘1‘, ‘test sql 002‘); 10 11 IF t_error = 1 THEN 12 ROLLBACK; 13 ELSE 14 COMMIT; 15 END IF; 16 17 END
返回执行状态,即是提交了还是回滚了:
1 DROP PROCEDURE IF EXISTS test_sp1 2 CREATE PROCEDURE test_sp1( ) 3 BEGIN 4 DECLARE t_error INTEGER DEFAULT 0; 5 DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1; 6 7 START TRANSACTION; 8 INSERT INTO test VALUES(NULL, ‘test sql 001‘); 9 INSERT INTO test VALUES(‘1‘, ‘test sql 002‘); 10 11 IF t_error = 1 THEN 12 ROLLBACK; 13 ELSE 14 COMMIT; 15 END IF; 16 select t_error; //返回标识位的结果集; 17 END
以上是关于mysql存储过程中使用事务的主要内容,如果未能解决你的问题,请参考以下文章