【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

 

posted on 2016-11-11 17:01  梦琪小生  阅读(1226)  评论(0编辑  收藏  举报

导航