Oracle/PLSQL: FOR Loop 循环语句
2012-07-03 16:21
274 查看
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR loop_counter IN [REVERSE] lowest_number..highest_number
LOOP
{.statements.}
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR Lcntr IN 1..20
LOOP
LCalc := Lcntr * 31;
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR Lcntr IN REVERSE 1..15
LOOP
LCalc := Lcntr * 31;
END LOOP;
This example will loop 15 times. The counter will start at 15 and end at 1. (loops backwards)
oracle学习--循环语句:
/article/4784360.html
On Cursor FOR Loops:
http://www.oracle.com/technology/oramag/oracle/08-nov/o68plsql.html
A Example:
Sql代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
CREATE OR REPLACE
procedure TEST_p(eq_id varchar,eq_id_new varchar,etp_no number) is
v_eq_id varchar2(20) :=eq_id;
v_eq_id_new varchar2(20) := eq_id_new;
v_etp_no number:=etp_no;
begin
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)
LOOP
dbms_output.put_line(vRows.id);
insert into test(id,col2,col3,col4) values(vRows.id,vRows.certify_yn,vRows.required_yn,vRows.tpr_no);
END LOOP;
end TEST_p;
create table TEst(
id number(38),
col2 varchar2(1),
col3 varchar2(1),
col4 number(38)
)
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR loop_counter IN [REVERSE] lowest_number..highest_number
LOOP
{.statements.}
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR Lcntr IN 1..20
LOOP
LCalc := Lcntr * 31;
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代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
FOR Lcntr IN REVERSE 1..15
LOOP
LCalc := Lcntr * 31;
END LOOP;
This example will loop 15 times. The counter will start at 15 and end at 1. (loops backwards)
oracle学习--循环语句:
/article/4784360.html
On Cursor FOR Loops:
http://www.oracle.com/technology/oramag/oracle/08-nov/o68plsql.html
A Example:
Sql代码
![](http://dc.139ba.com/uploads/allimg/110818/11263RN6-0.png)
CREATE OR REPLACE
procedure TEST_p(eq_id varchar,eq_id_new varchar,etp_no number) is
v_eq_id varchar2(20) :=eq_id;
v_eq_id_new varchar2(20) := eq_id_new;
v_etp_no number:=etp_no;
begin
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)
LOOP
dbms_output.put_line(vRows.id);
insert into test(id,col2,col3,col4) values(vRows.id,vRows.certify_yn,vRows.required_yn,vRows.tpr_no);
END LOOP;
end TEST_p;
create table TEst(
id number(38),
col2 varchar2(1),
col3 varchar2(1),
col4 number(38)
)
相关文章推荐
- oracle的控制语句if和循环语句loop while for
- oracle的loop等循环语句的几个用法小例子
- Oracle中的几种控制语句if..else,for,loop,while
- Oracle中四种循环(GOTO、For、While、Loop)
- Oracle控制语句(if , loop , while , for)
- Oracle/PLSQL: CURSOR FOR Loop
- oracle的loop等循环语句的几个用法小例子
- Oracle中三种循环(For、While、Loop)案例
- PB12.5中的循环语句使用(FOR...NEXT和DO ...LOOP)
- Oracle PL/SQL之LOOP循环控制语句
- oracle控制语句学习四——while循环控制语句、for循环控制语句 递增 递减、嵌套循环和标号
- Oracle中四种循环(GOTO、For、While、Loop)
- oracle for loop循环以及游标循环
- Oracle PL/SQL之LOOP循环控制语句
- Oracle PL/SQL之LOOP循环控制语句
- PL/SQL语句学习之使用while、loop和for三种循环打印数字的1-10
- ORACLE 中 FOR 语句循环插入数据
- Oracle/PLSQL: FOR Loop
- Oracle中三种循环(For、While、Loop)
- oracle控制语句学习三——loop 循环控制语句