2009-07-22 33 views
0

在plsql中,我看到有人使用for循环而没有定义循环索引,并且数据库可以正确执行。但是我在oracle文档中找不到这个语法的描述。任何人都可以解释它?万分感谢!在plsql中,我看到有人使用for循环而没有定义循环索引,为什么?怎么样?

下面的代码是一个示例中,注意inner_c没有定义:

declare 
    v_current_nr NUMBER; 
begin 
    v_current_nr:=0; 

    loop 
     for inner_c in 1..4 
     loop 
      DBMS_OUTPUT.put_line(v_current_nr); 
     end loop; 

     v_current_nr:=v_current_nr+5; 
     exit when v_current_nr>25; 
    end loop; 
end; 
+0

你问的文档:http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/controlstructures.htm#sthref945 – 2009-07-23 01:53:01

回答

3

inner_c被用作用于循环所述把手/变量。如果你DBMS_OUTPUTed它,你会发现它在这种情况下通过数字1 - 4循环。

它隐式声明为循环机制的一部分。当循环结束时,它会超出范围。

0

你究竟是什么意思“循环指数”?

您可以:For i in 1..5 这给我的1值至5

但你也可以有:

For record in myCursor Loop 
    record.myField 
End Loop 

每次将返回光标一行。 也许你可以举一个你看到的例子吗?

http://www.techonthenet.com/oracle/loops/for_loop.php

相关问题