oracle 游标循环 while,Oracle中的for和while循环

Normal

0

7.8 磅

0

2

false

false

false

EN-US

ZH-CN

X-NONEOracle中的for和while循环------------------------------------------------------------------------有两种方式可以实现条件循环一、for变量in开始数值...结束数值loop     end loop;二、while条件loop

end  loop;loop的使用方式:一、X := 100;

LOOP

X := X + 10;

IF X > 1000 THEN

EXIT;

END IF END LOOP;

Y := X;二、X := 100;

LOOP

X := X + 10;

EXIT WHEN X > 1000;

X := X + 10;

END LOOP;

Y := X;还有一个GOTO的使用,在后面的过程中会有的,用来产生错误日志。以下是一个非常简单的过程,用来熟悉循环的!create or replace procedure count_number is

/*功能描述:计算计算出1到100的和t的值为和*/

i number(10);

t number(10);

begin

/*

i := 1;

t := 0;

--用while+loop实现/*begin

while i <= 100 loop

t := t + i;

i := i + 1;

end loop;

end;

*/

i := 1;

t := 0;

--用for实现begin

for i in 1 .. 100 loop

t := t + i;

end loop;

end;

end count_number;

for循环:[PL/SQL]用For Loop替代Cursor

CURSOR FOR Loop

FOR  employee_rec in c1  ---employee_rec直接用,不用提前定义LOOP

total_val := total_val + employee_rec.monthly_income;

END LOOP;当使用CURSOR FOR Loop时,不用我手工open cursor close cursor应用:begin

FOR emm IN ( SELECT ro_site,

ns_site, product_line, wh_type

FROM eis_hq_invhl_mail_data

WHERE report_type = 'Detailed' )

LOOP

DBMS_OUTPUT.put_line(

emm.product_line );

eis_hq_invhl_pkg.make_mail_detailed_data

( p_ro_site

=>

emm.ro_site,

p_ns_site

=>

emm.ns_site,

p_product_line =>       emm.product_line,

p_wh_type

=>

emm.wh_type,

p_current_day =>

to_date('2005-11-07','yyyy-MM-dd') );

END LOOP;

end;存储过程DIY2----游标与循环while循环:WHILE( i <= CEIL( LENGTH( p_clob_data ) / 4000 ))

LOOP

v_clob_data := TRIM( SUBSTR(

p_clob_data,

i * 4000,

4000 ));

DBMS_OUTPUT.put_line( SUBSTR(

v_clob_data,

0,

255 ));

i := i + 1;

END LOOP;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值