在网上查到一种语法,据说可以用来作为存储过程的跳出语句,在官网文档也查到了说明,但是他没有给例子,
我自己实现的方式就是在存储过程的begin开始处增加lable,然后需要leave的时候leave labelxxxx,比如像下面这样
DROP PROCEDURE IF EXISTS `sp_GetLootSilverState`;
-- 改变提交符号
delimiter //
CREATE PROCEDURE `sp_GetLootSilverState`
(
GroupID int,
FoeGroupID int,
out ReturnVal int 
)
lable_exit:BEGIN
...
...
...
leave lable_exit
END
//
-- 改回提交符号
delimiter ;自己试验这个语法好想没啥问题,但是有一个疑问,比如leave用在别的流程控制结构while,loop里时,这些语句的结束end位置是要加提交符号;的,这里需要加吗?还有一个就是,当存在多个存储过程都需要跳出时,都用lable_exit这个会不会造成同名冲突?