各位大侠:
小弟的存储过程get_log_byriqi比较简单,有两个输入参数。
在java代码中去调用这个存储过程,主要代码如下
CallableStatement proc = conn.prepareCall("{call get_log_byriqi(?,?)}");
proc.setString(1,"20071001");
proc.setString(2,"20071030"); ResultSet rs = proc.executeQuery(); 但是接下来写的代码
while(rs.next())
{....
}
或者rs.absolute(1);
都会出现异常:对只转发结果集的无效操作: absolute 以前这个问题我也遇到过,当时不是用的存储过程,而是select直接查询,在Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)中加入
ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY就好了; 这次我把proc写成
proc = conn.prepareCall(strSQL,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)
却不行 这个问题怎么解决啊!谢谢
小弟的存储过程get_log_byriqi比较简单,有两个输入参数。
在java代码中去调用这个存储过程,主要代码如下
CallableStatement proc = conn.prepareCall("{call get_log_byriqi(?,?)}");
proc.setString(1,"20071001");
proc.setString(2,"20071030"); ResultSet rs = proc.executeQuery(); 但是接下来写的代码
while(rs.next())
{....
}
或者rs.absolute(1);
都会出现异常:对只转发结果集的无效操作: absolute 以前这个问题我也遇到过,当时不是用的存储过程,而是select直接查询,在Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)中加入
ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY就好了; 这次我把proc写成
proc = conn.prepareCall(strSQL,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)
却不行 这个问题怎么解决啊!谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货