7、PL/SQL循环

当需要执行一段代码多次时可能会出现以下这种情况:一般来说,语句依次执行,首先执行函数中的第一个语句,然后执行第二个语句,依此类推。

编程语言提供了允许更复杂的执行路径的各种控制结构。

循环语句允许多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般流程图 -

PL/SQL提供以下类型的循环来处理循环需求。可点击以下链接查看每个循环类型如何使用。

编号循环类型描述
1PL/SQL基本LOOP循环在这个循环结构中,语句序列包含在LOOPEND LOOP语句之间。在每次迭代时,执行语句序列,然后在循环顶部继续控制。
2PL/SQL while循环当给定条件为真时,重复一个语句或一组语句。它在执行循环体之前测试状态。
3PL/SQL for循环多次执行一系列语句,并缩写管理循环变量的代码。
4PL/SQL嵌套循环可在任何其他基本循环中使用一个或多个循环,如:whilefor循环。

标记PL/SQL循环

在PL/SQL中,可以标记PL/SQL循环。标签使用双尖括号(<<>>)括起来,并显示在LOOP语句的开头。标签名称也可以出现在LOOP语句的末尾。可以使用EXIT语句中的标签退出循环。

以下程序说明了这个概念 -

SQL> declare 
  2     i number(1);
  3     j number(2);
  4  begin
  5     << outer_loop >>
  6     for i in 1..3 loop
  7         << inner_loop >>
  8         for j in 1..3 loop
  9             dbms_output.put_line('i is: ' || i || ' and j is: '|| j);
 10         end loop inner_loop;
 11     end loop outer_loop;
 12  end;
 13  /
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支持以下控制语句。标签循环也有助于控制环外的控制。点击以下链接查看它们的详细信息。

编号控制语句描述
1EXIT语句Exit语句完成循环,控制在END LOOP之后立即传递给语句。
2CONTINUE语句导致循环跳过其主体的剩余部分,并在重申之前立即重新测试其状态。
3GOTO语句转移控制到标记语句。虽然不建议在程序中使用GOTO语句。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值