调用oracle存储过程使用ResultSet的last方法 报错:出现对只转发结果集的无效操作: last
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了调用oracle存储过程使用ResultSet的last方法 报错:出现对只转发结果集的无效操作: last相关的知识,希望对你有一定的参考价值。
调用oracle存储过程返回cursor
用ResultSet接收,使用ResultSet的last方法 报错:
出现对只转发结果集的无效操作: last
部分代码:
CallableStatement call = con.prepareCall("call report_success_rate.showSuccessRate(?, ?, ?)");
call.setString(1, year);
call.setString(2, areaID);
call.registerOutParameter(3, OracleTypes.CURSOR);
call.execute();
ResultSet set = (ResultSet)call.getObject(3);
set.last();
System.out.println(set.getRow());
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
各个参数参考如下:
ResultSet.TYPE_FORWARD_ONLY (略)
ResultSet.TYPE_SCROLL_INSENSITIVE 双向滚动,但不及时更新,就是如果数据库里的数据修改过,并不在ResultSet中反应出来。
ResultSet.TYPE_SCROLL_SENSITIVE 双向滚动,并及时跟踪数据库里的更新,以便更改ResultSet中的数据。
ResultSet.CONCUR_READ_ONLY 只读取ResultSet
ResultSet.CONCUR_UPDATABLE 用ResultSet更新数据库追问
这样的网上很多, 都搜过了,试过了 不行才问的, 郁闷了
我这个是存储过程,不知道会不会有影响,反正就是不行···
以上是关于调用oracle存储过程使用ResultSet的last方法 报错:出现对只转发结果集的无效操作: last的主要内容,如果未能解决你的问题,请参考以下文章