欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > Mysql

MySQL存储过程中游标循环的跳出和继续操作示例

发布时间:2014-07-14 作者:枫窝 来源:转载
这篇文章主要介绍了MySQL存储过程中游标循环的跳出和继续操作示例,解决了在MySQL存储过程中循环时执行游标的一个conitnue的操作解决方法,需要的朋友可以参考下

最近遇到这样的问题,在MySQL的存储过程中,游标操作时,需要执行一个conitnue的操作.众所周知,MySQL中的游标循环操作常用的有三种,LOOP,REPEAT,WHILE.三种循环,方式大同小异.以前从没用过,所以记下来,方便以后查阅.

1.REPEAT

复制代码 代码如下:

REPEAT

Statements;

UNTIL expression

END REPEAT

demo

DECLARE num INT;

DECLARE my_string VARCHAR(255);

REPEAT

SET my_string =CONCAT(my_string,num,',');

SET num = num +1;

UNTIL num <5

END REPEAT;

2.WHILE

复制代码 代码如下:

WHILE expression DO

Statements;

END WHILE

demo

DECLARE num INT;

DECLARE my_string VARCHAR(255);

SET num =1;

SET str ='';

WHILE num < span>10DO

SET my_string =CONCAT(my_string,num,',');

SET num = num +1;

END WHILE;

3.LOOP(这里面有非常重要的ITERATE,LEAVE)

复制代码 代码如下:

DECLARE num INT;

DECLARE str VARCHAR(255);

SET num =1;

SET my_string ='';

loop_label: LOOP

IF num <10THEN

LEAVE loop_label;

ENDIF;

SET num = num +1;

IF(num mod3)THEN

ITERATE loop_label;

ELSE

SET my_string =CONCAT(my_string,num,',');

ENDIF;

END LOOP;

PS:可以这样理解ITERATE就是我们程序中常用的contiune,而ITERATE就是break.当然在MySQL存储过程,需要循环结构有个名称,其他都是一样的.

官方的文档-->http://dev.mysql.com/doc/refman/5.0/en/loop.html

相关推荐