存储过程:标号

drop procedure if exists p17;

delimiter //

 
create procedure p17 ()  
label_1: begin  
  label_2: while 1 = 1 do 
  	select "循环";
  	leave label_2;  -- 若没此句,为死循环
  end while;  
  
  label_3: repeat 
  	select "循环2";
  	leave label_3; -- 若没此句,为死循环
	  until 0 != 0  
	end repeat;
	  
  label_4: loop 
  	select "循环3";
  	leave label_4; -- 若没此句,为死循环
  end loop;  
end; //  
 

delimiter ;

call p17();


/*
+------+
| 循环 |
+------+
| 循环 |
+------+
1 row in set (0.00 sec)

+-------+
| 循环2 |
+-------+
| 循环2 |
+-------+
1 row in set (0.00 sec)

+-------+
| 循环3 |
+-------+
| 循环3 |
+-------+
1 row in set (0.00 sec)
*/

create procedure p19 (parameter1 char)  
label_1: begin  
  label_2: begin  
    label_3: begin  
      if parameter1 is not null then  
        if parameter1 = 'a' then  
          leave label_1;  
        else begin  
          if parameter1 = 'b' then  
            leave label_2;  
          else  
            leave label_3;  
            end if;  
          end;  
        end if;  
      end if;  
    end;  
  end;  
end;//  

LEAVE语句使程序跳出复杂的复合语句。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值