代码中有这么一段:
while (resultSet_synonym.next()){
log.info(resultSet_synonym.getString(1));
sql = "SELECT colname as name from syscat.columns "
+ "WHERE  tabschema = '" + resultSet_synonym.getString(1)
+ "'" + " and tabname like '"
+ resultSet_synonym.getString(2) + "' order by colno";
resultSet = stmt.executeQuery(sql);
}
当resultSet_synonym为空时,应该是跳出循环的,但是 结果却报错:
com.ibm.db2.jcc.a.SqlException: Invalid operation: result set closed
at com.ibm.db2.jcc.a.cj.bl(cj.java:3347)
at com.ibm.db2.jcc.a.cj.c(cj.java:292)
at com.ibm.db2.jcc.a.cj.next(cj.java:279)
问下这是什么原因,怎么解决?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【chaohui10】截止到2008-07-10 11:24:58的历史汇总数据(不包括此帖):
    发帖的总数量:43                       发帖的总分数:670                      每贴平均分数:15                       
    回帖的总数量:48                       得分贴总数量:7                        回帖的得分率:14%                      
    结贴的总数量:33                       结贴的总分数:430                      
    无满意结贴数:9                        无满意结贴分:180                      
    未结的帖子数:10                       未结的总分数:240                      
    结贴的百分比:76.74 %               结分的百分比:64.18 %                  
    无满意结贴率:27.27 %               无满意结分率:41.86 %                  
    楼主加油
      

  2.   

    你应该先判断resultSet_synonym是否为null
    然后再进行循环