MYSQL 存储过程 多表更新异常捕捉和异常处理方式

今天在做MYSQL 存储过程 多表更新的功能   多表更新时候注意事项

1、首先是确保多表更新能够一次执行,途中没有哪个表的sql语句错误

2、上线后修改表结构及字段,请注意检查是否影响mysql 过程和函数

 

下面列举下我在做多表更新的方式:

刚开始考虑的第一种方法:(不建议)

MYSQL 存储过程 多表更新异常捕捉和异常处理方式
BEGIN
    DECLARE EXIT HANDLER FOR SQLEXCEPTION SELECT 0 INTO rtn;
    BEGIN
        --执行的sql
        --执行的sql   
        --执行的sql  #如果这个报错了 上面的sql已经执行了
    END;

    SET rtn = 1;
END
MYSQL 存储过程 多表更新异常捕捉和异常处理方式

 

第二种方式:(本人建议)

  

MYSQL 存储过程 多表更新异常捕捉和异常处理方式
BEGIN
    
    DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK;
    SET rtn = 0;

    START TRANSACTION;
        --执行的sql
        --执行的sql
        --执行的sql   #如果这个报错了 上面的sql还是没有执行的
    COMMIT;

    SET rtn = 1;
END
MYSQL 存储过程 多表更新异常捕捉和异常处理方式

 

最后说明:我建的过程有IN和OUT参数的,这个因需求而定哦!

MYSQL 存储过程 多表更新异常捕捉和异常处理方式,布布扣,bubuko.com

MYSQL 存储过程 多表更新异常捕捉和异常处理方式

上一篇:Shell编程规范:Don't use ls | grep


下一篇:Linux安装RabbitMQ3.8.7