oracle的游标用法, for循环游标和fetch into用法上有什么区别?
我感觉for 循环用法上比fetch into 简洁很多, 2者使用上有什么区别吗?
有什么场合是fetch 可以做,for 做不了的吗?
从用法上看,for 只要一句话就行了, fetch 又要打开,关闭游标,还要判断是否取到数据.
declare
cursor c_job
is
select * from emp;
c_row c_job%rowtype;
begin
===========================for=================================
for c_row in c_job loop
dbms_output.put_line(c_row.empno||'-'||c_row.ename||'-'||c_row.job||'-'||c_row.sal);
end loop;
end;
===================fetch=============================
open c_job;
loop
fetch c_job into c_row;
exit when c_job%notfound;
dbms_output.put_line(c_row.empno||'-'||c_row.ename||'-'||c_row.job||'-'||c_row.sal);
end loop;
close c_job;