- PL/SQL 教程
- PL/SQL - 主页
- PL/SQL - 概述
- PL/SQL - 环境
- PL/SQL - 基本语法
- PL/SQL - 数据类型
- PL/SQL - 变量
- PL/SQL - 常量和文字
- PL/SQL - 运算符
- PL/SQL - 条件
- PL/SQL - 循环
- PL/SQL - 字符串
- PL/SQL - 数组
- PL/SQL - 过程
- PL/SQL - 函数
- PL/SQL - 游标
- PL/SQL - 记录
- PL/SQL - 异常
- PL/SQL - 触发器
- PL/SQL - 包
- PL/SQL - 集合
- PL/SQL - 事务
- PL/SQL - 日期和时间
- PL/SQL - DBMS 输出
- PL/SQL - 面向对象
- PL/SQL 有用资源
- PL/SQL - 问题与解答
- PL/SQL - 快速指南
- PL/SQL - 有用的资源
- PL/SQL - 讨论
PL/SQL - 循环
在本章中,我们将讨论 PL/SQL 中的循环。可能存在这样的情况:您需要多次执行一段代码。一般来说,语句是按顺序执行的:首先执行函数中的第一个语句,然后执行第二个语句,依此类推。
编程语言提供了各种控制结构,允许更复杂的执行路径。
循环语句允许我们多次执行一条语句或一组语句,以下是大多数编程语言中循环语句的一般形式 -
PL/SQL 提供以下类型的循环来处理循环要求。单击以下链接查看其详细信息。
序列号 | 循环类型和描述 |
---|---|
1 | PL/SQL 基本循环
在此循环结构中,语句序列包含在 LOOP 和 END LOOP 语句之间。在每次迭代中,都会执行语句序列,然后在循环顶部恢复控制。 |
2 | PL/SQL WHILE 循环
当给定条件为真时,重复一个语句或一组语句。它在执行循环体之前测试条件。 |
3 | PL/SQL FOR 循环
多次执行一系列语句并缩写管理循环变量的代码。 |
4 | PL/SQL 中的嵌套循环
您可以在任何其他基本循环、while 或 for 循环中使用一个或多个循环。 |
标记 PL/SQL 循环
PL/SQL 循环可以被标记。标签应该用双尖括号(<< 和 >>)括起来,并出现在 LOOP 语句的开头。标签名称也可以出现在 LOOP 语句的末尾。您可以使用 EXIT 语句中的标签退出循环。
以下程序说明了这个概念 -
DECLARE i number(1); j number(1); BEGIN << outer_loop >> FOR i IN 1..3 LOOP << inner_loop >> FOR j IN 1..3 LOOP dbms_output.put_line('i is: '|| i || ' and j is: ' || j); END loop inner_loop; END loop outer_loop; END; /
当上面的代码在 SQL 提示符下执行时,会产生以下结果 -
i is: 1 and j is: 1 i is: 1 and j is: 2 i is: 1 and j is: 3 i is: 2 and j is: 1 i is: 2 and j is: 2 i is: 2 and j is: 3 i is: 3 and j is: 1 i is: 3 and j is: 2 i is: 3 and j is: 3 PL/SQL procedure successfully completed.
循环控制语句
循环控制语句改变其正常顺序的执行。当执行离开作用域时,在该作用域中创建的所有自动对象都将被销毁。
PL/SQL 支持以下控制语句。标记循环还有助于将控制置于循环之外。单击以下链接查看其详细信息。
序列号 | 控制语句和描述 |
---|---|
1 | 退出语句
Exit 语句完成循环,控制权立即传递到 END LOOP 之后的语句。 |
2 | CONTINUE 语句
导致循环跳过其主体的其余部分并在重复之前立即重新测试其条件。 |
3 | GOTO 语句
将控制转移到带标签的语句。但不建议在程序中使用 GOTO 语句。 |