语句标签

 

[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 blocks,对于 LOOPREPEAT, and WHILE ,标签有以下规则:

  • begin_label 后面必须有冒号。

  • begin_label可以不带给出 end_label如果 end_label存在,则必须与相同begin_label

  • 没有begin_label就不能有end_label

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

  • 标签最多可包含16个字符。

在标签构造中引用标签,请使 ITERATE or 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;

块标签的范围不包括在块内声明的处理程序的代码。

 

posted @ 2020-08-18 07:26  wongchaofan  阅读(106)  评论(0编辑  收藏  举报