当前位置: 首页 > 编程笔记 >

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

聂昱
2023-03-14
本文向大家介绍MySQL存储过程中游标循环的跳出和继续操作示例,包括了MySQL存储过程中游标循环的跳出和继续操作示例的使用技巧和注意事项,需要的朋友参考一下

最近遇到这样的问题,在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

 类似资料:
  • 本文向大家介绍Mysql存储过程循环内嵌套使用游标示例代码,包括了Mysql存储过程循环内嵌套使用游标示例代码的使用技巧和注意事项,需要的朋友参考一下

  • 场景:我有一个存储过程,它基于两个输入从表中获取数据:一个日期和一个字符串(这是一个列名)。第一个过程是从另一个过程调用的,该过程使用光标循环表中的行,并将每一行传递给第一个过程的字符串(要检查的列名)。我对第二个过程(即直接调用的过程)的输入是日期。 问题:当我单独调用它时,我的第一个过程运行良好。我的第二个过程是抛出一些我不知道如何修复的语法错误。 Obs:我已经在这里检查了关于这个主题的一些

  • 本文向大家介绍PHP实现PDO操作mysql存储过程示例,包括了PHP实现PDO操作mysql存储过程示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现PDO操作mysql存储过程。分享给大家供大家参考,具体如下: 一 代码 sql语句: index.php: 二 运行结果 数据添加成功! 更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》

  • 本文向大家介绍js和jquery中循环的退出和继续学习记录,包括了js和jquery中循环的退出和继续学习记录的使用技巧和注意事项,需要的朋友参考一下 作为水货,就是学会了1+1=3也要记录一下!错了,是2 学习记录: js中的 循环,退出循环,使用break;退出当前循环继续下一个循环,使用continue jquery中的each()方法中要实现break,使用return false;con

  • 本文向大家介绍JS中跳出循环的示例代码,包括了JS中跳出循环的示例代码的使用技巧和注意事项,需要的朋友参考一下 1、for循环中我们使用continue;终止本次循环计入下一个循环,使用break终止整个循环。 2、而在jquery中 $.each使用return true 终止本次循环计入下一个循环,return false终止整个循环。  函数返回值跟此处无关 例: 总结 以上所述是小编给大家

  • 问题内容: 如何在同一例程中使用两个游标?如果我删除了第二个游标声明并获取了循环,一切都将正常工作。该例程用于在我的webapp中添加朋友。它使用当前用户的ID和我们要添加的朋友的电子邮件作为朋友,然后检查电子邮件是否具有相应的用户ID,如果不存在朋友关系,它将创建一个。除此以外的任何其他常规解决方案也都很好。 问题答案: 我终于写了一个执行相同功能的不同函数: 我希望这是一个更好的解决方案,无论

  • 因此,我正在开发一个程序,允许用户将学生添加到班级中,并管理他们的成绩等等。当用户选择菜单中的第一个选项时,他必须输入一个id(必填),但他也可以添加数字分数和/或字母等级。根据另一篇文章中的反馈,我设法创建了一个字符串变量行来读取用户输入,然后检查它是否为“S”/“S”(跳过或不跳过),并相应地将值解析为double。现在基于这个问题,如果用户决定跳过添加分数,我如何跳过提示并继续下一个提示?我

  • 问题内容: 这个问题是一个相当开放的问题。我已经将MS SQLServer的存储过程与经典的ASP和ASP.net一起使用了一段时间,并且非常喜欢它们。 我正在从事一个小型的业余项目,由于各种原因,LAMP路线已经消失。在MySQL和PHP5中使用存储过程有任何提示/技巧/陷阱或良好的起点吗?我的MySQL版本支持存储过程。 问题答案: 算了,它比PDO难用得多,应该已经删除了。的确,它引入了对m