Oracle/PLSQL: FOR Loop 循环语句

Oracle/PLSQL: FOR Loop: 
http://www.techonthenet.com/oracle/loops/for_loop.php 

Loops with PL/SQL: 
http://www.adp-gmbh.ch/ora/plsql/loops.html 


The syntax for the FOR Loop is: 

Sql代码   收藏代码
  1. FOR loop_counter IN [REVERSE] lowest_number..highest_number  
  2. LOOP  
  3.      {.statements.}  
  4. END LOOP;  


You would use a FOR Loop when you want to execute the loop body a fixed number of times.




Let's take a look at an example.



Sql代码   收藏代码
  1. FOR Lcntr IN 1..20  
  2. LOOP  
  3.      LCalc := Lcntr * 31;  
  4. END LOOP;  


This example will loop 20 times. The counter will start at 1 and end at 20.




The FOR Loop can also loop in reverse. For example:



Sql代码   收藏代码
  1. FOR Lcntr IN REVERSE 1..15  
  2. LOOP  
  3.      LCalc := Lcntr * 31;  
  4. END LOOP;  


This example will loop 15 times. The counter will start at 15 and end at 1. (loops backwards)





oracle学习--循环语句:


http://www.cnblogs.com/happyday56/archive/2007/06/22/793102.html  


On Cursor FOR Loops:


http://www.oracle.com/technology/oramag/oracle/08-nov/o68plsql.html  




A Example:


Sql代码   收藏代码
  1. CREATE OR REPLACE   
  2. procedure TEST_p(eq_id varchar,eq_id_new varchar,etp_no number) is  
  3.        v_eq_id varchar2(20) :=eq_id;  
  4.        v_eq_id_new varchar2(20) := eq_id_new;  
  5.        v_etp_no number:=etp_no;  
  6. begin  
  7.     for  vRows in (select AQD_SEQ_MD_ET_PROCEDURES.nextval as id,certify_yn,required_yn,tpr_no from AQD_MD_ET_PROCEDURES  where rownum <5)  
  8.     LOOP  
  9.         dbms_output.put_line(vRows.id);  
  10.         insert into test(id,col2,col3,col4) values(vRows.id,vRows.certify_yn,vRows.required_yn,vRows.tpr_no);  
  11.     END LOOP;  
  12. end TEST_p;  
  13.   
  14. create table TEst(  
  15. id  number(38),  
  16. col2 varchar2(1),  
  17. col3 varchar2(1),  
  18. col4 number(38)  
  19. )  

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值