weblogic服务器查询数据异常!

eassen_licd 2010-02-10 03:31:58
weblogic服务器,oracle数据库,jdbc连接池。

代码:

int count=0;
if(rs.next() && count<1000){
……
System.out.println(rs.getString(1));
count++;
}

异常:
2010-02-10 14:55:06,359 [ERROR][com.dc.gdhl.dao.CtaisDAOStringImpl]:SQL异常:
java.sql.SQLException: ResultSet has no more data.
at weblogic.jdbc.oci.ResultSet.next()Z(ResultSet.java:752)
at weblogic.jdbc.wrapper.ResultSet_weblogic_jdbc_oci_ResultSet.next()Z(Optimized Method)
at com.dc.gdhl.dao.CtaisDAOStringImpl.createXml(Ljava.lang.String;ILjava.lang.String;Ljava.lang.String;II)Ljava.lang.String;(Optimized Method)
at com.dc.gdhl.dataHandler.GsDataHandlerAbst.generateXmls()Ljava.io.File;(GsDataHandlerAbst.java:143)
at com.dc.gdhl.dataHandler.GsDataHandlerAbst.execute()V(GsDataHandlerAbst.java:84)
at com.dc.gdhl.job.OrganizeGsDataJob.execute()V(OrganizeGsDataJob.java:57)
at com.dc.gdhl.mytest.JHPTSessionBean$1.run()V(JHPTSessionBean.java:49)
at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Source)
2010-02-10 14:55:06,359 [ERROR][com.dc.gdhl.dataHandler.GsDataHandlerAbst]:SQL异常:
com.dc.gdhl.Exception.GdhlException: SQL异常:
at com.dc.gdhl.dao.CtaisDAOStringImpl.createXml(Ljava.lang.String;ILjava.lang.String;Ljava.lang.String;II)Ljava.lang.String;(Optimized Method)
at com.dc.gdhl.dataHandler.GsDataHandlerAbst.generateXmls()Ljava.io.File;(GsDataHandlerAbst.java:143)
at com.dc.gdhl.dataHandler.GsDataHandlerAbst.execute()V(GsDataHandlerAbst.java:84)
at com.dc.gdhl.job.OrganizeGsDataJob.execute()V(OrganizeGsDataJob.java:57)
at com.dc.gdhl.mytest.JHPTSessionBean$1.run()V(JHPTSessionBean.java:49)
at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Source)
Caused by: java.sql.SQLException: ResultSet has no more data.
at weblogic.jdbc.oci.ResultSet.next()Z(ResultSet.java:752)
at weblogic.jdbc.wrapper.ResultSet_weblogic_jdbc_oci_ResultSet.next()Z(Optimized Method)
... 6 more
...全文
95 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
eassen_licd 2010-02-10
  • 打赏
  • 举报
回复
引用 6 楼 yy_mm_dd 的回复:
ResultSet has no more data

我怀疑:
结果集指针已经到了最后一行,但是你还是rs.getXXX()操作...
愚见谨供参考


测试了很多次,当rs.next()没有值时就不会执行while中的语句。
YY_MM_DD 2010-02-10
  • 打赏
  • 举报
回复
ResultSet has no more data

我怀疑:
结果集指针已经到了最后一行,但是你还是rs.getXXX()操作...
愚见谨供参考
eassen_licd 2010-02-10
  • 打赏
  • 举报
回复
用while的目的是,循环结果,每1000条生成一个文件,到最后时不够1000条数据,则出现了如上异常。
eassen_licd 2010-02-10
  • 打赏
  • 举报
回复
补充:
这个异常只是在所有结果都打印(print)出后才会出现。
YY_MM_DD 2010-02-10
  • 打赏
  • 举报
回复
我还有点不明白count++了,你为什么还是if??
应该是

int count=0;
while(rs.next() && count<1000){
……
System.out.println(rs.getString(1));---这里getString对应了数据库里的字段了?
count++;
}


suiziguo 2010-02-10
  • 打赏
  • 举报
回复
不懂weblogic,不过帮顶。好歹也是ORACLE家族的,呵呵。


以前用过weblogic tomcat,包括现在弄IBM websphere,不行了俺就重启之,哈哈。
YY_MM_DD 2010-02-10
  • 打赏
  • 举报
回复
数据库里的第一个子段是varchar2类型的????

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧