for in () 循环 不喜欢用,因为不能人为控制游标的关闭。

for in () 循环 不喜欢用,因为不能人为控制游标的关闭。

create   or   replace   procedure  sp_test_for    is

  type tbl_cmndict   
is   table   of  cmn_dict % rowtype  index   by  binary_integer;
  cmndicts  tbl_cmndict;
  i 
int : =   1   ; 
  
  e cmn_dict
% rowtype  ; 
  
  
   
begin  
 
      
for  tmprow  in  (   select    *   from   cmn_dict   where  dicid_  =   ' 1009 '   order   by   diccode_  ) loop
        
      cmndicts(i) :
=  tmprow  ;
      i :
= i + 1  ;
      
      
end  loop;
      
      
for  i   in   1 ..cmndicts. count   
      loop 
        e  :
=  cmndicts(i);
         
        dbms_output.put_line( 
' dicid_ : '    ||    e.dicid_  || '  diccode_ :  ' || e.diccode_  ||   '   dicname_ : '   ||  e.dicname_  ); 
      
      
end  loop ;
      
      
      

end  ;

你可能感兴趣的:(for in () 循环 不喜欢用,因为不能人为控制游标的关闭。)