首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle 存储过程 游标关闭疑问解决方案

2013-03-26 
oracle 存储过程 游标关闭疑问现在是这样写的:SQL codefor rec_a_cur in a_cur loopend loopclose a_cur

oracle 存储过程 游标关闭疑问
现在是这样写的:

SQL code
for rec_a_cur in a_cur loopend loop;close a_cur;

但是走到close a_cur的时候会抛出异常。
我把这close a_cur去掉就没有问题了。
难道不需要手动关闭游标?
我想问的是在oracle 存储过程中,什么情况下需要手动关闭游标?或者就不需要手动来关闭?
或者??? 求详细

[解决办法]
我的异常网推荐解决方案:oracle存储过程,http://www.myexception.cn/oracle-develop/177537.html
[解决办法]
不用单独close a_cur
因为光标for循环会自动关闭光标。
[解决办法]
两种游标使用方式
1.使用for循环的是隐式打开和关闭,不用写代码控制.for循环开始时打开,循环结束时自动关闭
for rec_a_cur in a_cur loop
--逻辑处理
end loop;
2.显式打开和关闭,写代码控制游标开关和循环
open a_cur;
loop
fetch into...
exit when ...
--逻辑处理
end loop;
close a_cur;
[解决办法]
for rec_a_cur in a_cur loop

end loop;

这种不需要close,loop完会自动close

热点排行