mysql --存儲過程 退出

mysql 存儲過程不支持quit, exit或return的方式退出
編寫存儲過程時,爲了業務規則須要,咱們可能須要提早退出存儲過程
那麼,咱們能夠利用leave label方式模擬實現quit退出的效果應用示例,存儲過程以下:mysql

-- 建立測試存儲過程

DELIMITER $$
USE `study`$$
DROP PROCEDURE IF EXISTS `updateGrade`$$
CREATE PROCEDURE `study`.`updateGrade`(IN para_new_grade INT, IN para_old_grade INT)sql

 
  

label:BEGIN
DECLARE var_grade_count INT;

SELECT COUNT(grade) INTO var_grade_count FROM students WHERE grade = para_old_grade;
IF 0 = var_grade_count THEN
SELECT var_grade_count;
LEAVE label; # 退出存儲過程
ELSE
UPDATE students SET grade = para_new_grade WHERE grade = para_old_grade;
END IF;

SELECT var_grade_count; # 打印變量值

END$$測試

DELIMITER ;ui

總結:spa

注意書寫格式:BEGIN前面加label:,須要退出時直接leave label;code

相關文章
相關標籤/搜索