gz,我也是这样的,只好一直用
try
{}
catch
{}
来减少错误
大家又没有好的办法啊?
try
{}
catch
{}
来减少错误
大家又没有好的办法啊?
解决方案 »
- pl/sql中如何操作别的数据库中的表
- 三张表联查的结果分页?
- 不安装oracle客户端,连接oracle可行么?
- Oracle 9i Database links 10g
- ORACLE 9i 的DATE 型字段中出现了"2006-12-11 下午 08:04:04"
- (新手)实现SQL字段自动增加 sequence + 触发器的问题!
- 如何用游标删除多行数据
- 在OEM客户端方案中的表中数据为什么不能及时更新,我用sqlplus插入了几行数据,可是在OEM中还是看不到,可是用查询语句表明的确已经插入
- 升级了机器,在win2000server上装oralce8.1.7,出现问题
- 两个sql语句一样只有条件不一样,如何取并集?
- 在线等,关于触发器的问题
- 一个初学者的问题
1.如果是手动打开的,要手动关闭.
open c;
loop
fetch ...
...
end loop;
close c; <---手动关闭.,2.如果不是手动打开的
for v_temp in c;
....
end loop ; <---就不用手动关闭了.
function queryNotices() return t_refCursor as
a1 t_refCursor;
begin
open a1 for
select * from MyTalble
return al;
end queryNotices; 通过此来返回结果集(只是说明问题简化了获取结果集的复杂性和所需要的参数)
这里Open 了游标
但是马上就把它return了,在哪里可以把它关闭?
而Java中的调用是通过通用连接池的,连接并非每次调用了就关闭(所以好像不能像楼上有同志说的那样简单的把连接给关闭了)而是返回pool中...
因为我们用了自己编写的通用组件,系统中大量的使用了这样的结果集获取噢是,现在出现的错误我怀疑与此有关,怎么关闭?
loop
fetch cursor into varlist;
process;
exit when cursor%notfound;
end loop
close cursor
exception when others
close cursor;
我的packagebody中是这样的代码 type t_refCursor is ref cursor;
function queryNotices() return t_refCursor as
a1 t_refCursor;
begin
open a1 for
select * from MyTalble
return al;
end queryNotices; 通过此来返回结果集(只是说明问题简化了获取结果集的复杂性和所需要的参数)
这里Open 了游标
但是马上就把它return了,在哪里可以把它关闭?
而Java中的调用是通过通用连接池的,连接并非每次调用了就关闭(所以好像不能像楼上有同志说的那样简单的把连接给关闭了)而是返回pool中...
因为我们用了自己编写的通用组件,系统中大量的使用了这样的结果集获取噢是,现在出现的错误我怀疑与此有关,怎么关闭?
----------------------------------------------
我的程序中大量使用此方法获取结果集,而程序经常出现
“ORA-0100:超出打开游标的最大数”的错误,我怀疑和此调用有关,但我不想改变oracle的系统配置文件来实现,因为那治标不治本!