【MySql】存储过程添加事务
存储过程使用SQLException捕获SQL错误,然后处理;
我们可以在MySQL存储过程中捕获SQL错误,然后通过事务判断,回滚(ROLLBACK)还是提交(COMMIT)。
CREATE PROCEDURE proc( ) BEGIN DECLARE t_error INTEGER DEFAULT 1; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=-1; START TRANSACTION; INSERT INTO test VALUES(NULL, 'test 001'); INSERT INTO test VALUES('1', 'test 002'); IF t_error = -1 THEN ROLLBACK; ELSE COMMIT; END IF; select t_error; //返回标识位的结果 -1失败,1成功 END