oracle 游标(学校)

这段时间实在是很忙,结婚、赶项目进度、被迫出书、教学。每件事都是不能得罪的。。。。
前几天帮教务处修正oracle数据库数据问题,把代码贴出来防止以后找不到了

None.gif declare  
None.gif
CURSOR  curTTT  is   select  XN,XM,XQ,KCMC,XF,BJMC  from  CJB;
None.gifXN1 
VARCHAR2 ( 10 );
None.gifXM1 
VARCHAR2 ( 20 );
None.gif  XQ1 
NUMBER ( 1 );
None.gif  KCMC1 
VARCHAR2 ( 40 );
None.gif  XF1 
VARCHAR2 ( 10 );
None.gif  BJMC1 
VARCHAR2 ( 40 );
None.gif
begin
None.gif
-- ---------------------------------------
None.gif

None.gif 
if  curTTT % isopen  =  false  then  
None.gif  
open  curTTT;
None.gif  
end   if ;
None.gif  
fetch  curTTT  into  XN1,XM1,XQ1,KCMC1,XF1,BJMC1;
None.gif 
--   Dbms_Output.put('1');
None.gif
while  curTTT % found 
None.gifloop
None.gif 
if  XF1 = ' 0 '   then        
None.gif
update  CJB 
None.gif
set  XF = ( select   *   from  ( select  nvl(XF, 0 from  CJB 
None.gif
where  BJMC = BJMC1  and  KCMC = KCMC1  and  XQ = XQ1
None.gif     
and  XN = XN1  and  XF > ' 0 '  )
None.gif       
where  ROWNUM <= 1 )
None.gif
where  BJMC = BJMC1  and  KCMC = KCMC1  and  XQ = XQ1
None.gif     
and  XN = XN1  and  XM = XM1; 
None.gif
end   if ;
None.gif
None.gif
if  curTTT % rowcount = 0   then
None.gif
exit ;
None.gif
end   if ;
None.gif
None.gif
fetch  curTTT  into  XN1,XM1,XQ1,KCMC1,XF1,BJMC1;
None.gif
end  loop;
None.gif
None.gif  
commit ;
None.gif  
close  curTTT;
None.gif
-- ------------------------------------------ 
None.gif
end ;

转载于:https://www.cnblogs.com/coffeeliu/archive/2006/09/30/518879.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值