Oracle PL/SQL 中的 While 循环及示例

什么是 PL/SQL While 循环?

PL/SQL 中的 **While 循环** 的工作方式与基本循环语句类似,只是 EXIT 条件位于循环的开头。它就像一个入口检查循环,其中执行块只有在条件满足时才会执行,因为在执行之前会检查退出条件。

它不显式需要“EXIT”关键字来退出循环,因为它每次都会隐式验证条件。

PL/SQL While 循环语法

WHILE <EXIT condition>
 LOOP
<execution block starts>
.
.
.
<execution_block_ends>
 END LOOP;
  • 在上述语法中,关键字“WHILE”标记循环的开始,而“END LOOP”标记循环的结束。
  • 每次在执行部分开始执行之前都会评估 EXIT 条件。
  • 执行块包含所有需要执行的代码。
  • 执行部分可以包含任何执行语句。

Oracle PL/SQL While 循环示例

在此示例中,我们将使用 WHILE 循环语句打印从 1 到 5 的数字。为此,我们将执行以下代码

PL/SQL While Loop
PL/SQL While 循环示例
DECLARE
a NUMBER :=1;
BEGIN
dbms_output.put_line('Program started');
WHILE (a <= 5) 
LOOP
dbms_output.put_line(a);
a:=a+1;
END LOOP;
dbms_output.put_line(‘Program completed' ); 	
END:
/

代码解释

  • 代码行 2:声明变量‘a’为‘NUMBER’数据类型,并将其初始化为值‘1’。
  • 代码行 4:打印语句“程序已开始”。
  • 代码行 5:关键字‘WHILE’标记循环的开始,并且还检查‘a’的值是否小于或等于 5。
  • 代码行 7:打印‘a’的值。
  • 代码行 8:将‘a’的值增加 1。
  • 代码行 9:关键字‘END LOOP’标记执行块的结束。
  • 从第 7 行到第 8 行的代码将继续执行,直到‘a’达到值 6,因为条件将返回 TRUE,然后控制将退出循环
  • 代码行 10:打印语句“程序已完成”。

摘要

循环 WHILE 循环
退出条件 当检查条件返回 false 时退出。
用途 适用于循环计数未知且退出基于其他条件的情况。