暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL的SQL语句 -复合语句(2) - 语句标签

数据库杂货铺 2021-04-12
409

语句标签

 

    [begin_label:] BEGIN
    [statement_list]
    END [end_label]


    [begin_label:] LOOP
    statement_list
    END LOOP [end_label]


    [begin_label:] REPEAT
    statement_list
    UNTIL search_condition
    END REPEAT [end_label]


    [begin_label:] WHILE search_condition DO
    statement_list
    END WHILE [end_label]

     

    标签允许用于 BEGIN ... END 块和 LOOPREPEAT 以及 WHILE 语句。用于这些语句的标签遵循以下规则:

     

    ● begin_label 后面必须跟一个冒号。

     

    ● 可以只有 begin_label 没有 end_label。如果存在 end_label,则它必须与 begin_label 相同。

     

    ● 不能只有 end_label 标签,没有 begin_label 标签。

     

    ● 同一嵌套级别的标签必须是不同的。

     

    ● 标签最长可达16个字符。

     

    要在标签结构中引用标签,请使用 ITERATE 或 LEAVE 语句。以下示例使用这些语句继续迭代或终止循环:

     

      CREATE PROCEDURE doiterate(p1 INT)
      BEGIN
      label1: LOOP
      SET p1 = p1 + 1;
      IF p1 < 10 THEN ITERATE label1; END IF;
      LEAVE label1;
      END LOOP label1;
      END;

       

      块标签的作用域不包括块中声明的用于 handler 的代码。

       

       

      官方网址:

      https://dev.mysql.com/doc/refman/8.0/en/statement-labels.html


      文章转载自数据库杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

      评论