暂时还只看到两种,先放在这里。如果以后有再更新^_^
[@more@]方式1:当你确定知道要做多少次循环的时候
FOR loop_index IN 1..100
LOOP ...
END LOOP;
方式2:
FOR loop_index IN cursor_name
LOOP...
END LOOP;
例子:
SQL> set serveroutput on
SQL> l
1 DECLARE
2 CURSOR cur_user IS
3 select employeeid, firstname, lastname from users;
4 Begin
5 For l_cur IN cur_user
6 LOOP
7 DBMS_OUTPUT.PUT_LINE(cur_user%ROWCOUNT || ':'||l_cur.employeeid||' '||l_cur.firstname);
8 END LOOP;
9* END;
(中间结果省略)
PL/SQL procedure successfully completed.
发现一种更加神奇的cursor用法,不过严格来说跟loop没啥关系。但是还是可以放在这里:
BEGIN
For l_cur IN (select employeeid, firstname, lastname from users)
LOOP
DBMS_OUTPUT.PUT_LINE(l_cur.employeeid||' '||l_cur.firstname);
END LOOP;
END;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7369227/viewspace-1018894/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7369227/viewspace-1018894/