aresultset是个对象句柄呀!你检测他是不是null,只是检测它有没有被引用呀!建议你检测它的第一个元素(如果它的对象是依次排列的)

解决方案 »

  1.   

    你检查返回的result.size()大小就可以了亚
      

  2.   

    一执行RS.NETXT(),数据库就报错
      

  3.   

    while (rs.next()){
     .............
    }
      

  4.   

    一旦执行rs.next();就报告以下错误:
    java.sql.SQLException: [Microsoft][ODBC 驱动程序 管理器] 非法的游标状态
      

  5.   

    rs.afterlast();
    if(rs.getrow()){}
      

  6.   

    在上面的代码中插入rs.previous();
      

  7.   

    上面俺说错了,应该是判断你的collection实例的size(),然后处理就可以了
      

  8.   

    杨杨兄的说法会出现以下错误:
    java.sql.SQLException: Result set type is TYPE_FORWARD_ONLY
      

  9.   

    是做搜索之类的吧,偶有建议:加一个变量int count=0;while(rs.next)
    {
         
    count++;}if count==0 则没有找到数据ok?
      

  10.   

    不知道怎样设置TYPE,
    用rs.setFetchDirection(ResultSet.TYPE_SCROLL_SENSITIVE)
    依然有上述错误
      

  11.   

    空结果集一旦执行rs.next();就报告以下错误:
    java.sql.SQLException: [Microsoft][ODBC 驱动程序 管理器] 非法的游标状态
      

  12.   

    先问你,你的Resultset是否一个查询得到的结果集?
      

  13.   

    ok,你只要判断rs.first()是否true就可以了,因为默认rs的游标一开始是
    在first row前面,而rs.first()判断是否有第一条记录,目的达到!
      

  14.   

    可以通过rs.next(),这个循环的次数判断。
      

  15.   

    我记得rs好像有个hasNext类似的方法,在JUbilder下点一下找一找吧,不过记得如果不为空,要把光标在放回初始位置。
      

  16.   

    建立Statement对象时可以带游标类型参数;
    判断记录集为空:
    private boolean testRs(ResultSet rs){
      if(rs.next())
        return true;
      else
        return false;
    }
    试试看
      

  17.   

    我不知道你获得ResultSet的代码,但从你说的“一执行RS.NETXT(),数据库就报错”(你没有给出报错信息),我猜你代码返回的ResultSet集的值是null(注意:null和记录数为零的数据集是两回事。),也就是说根本就没有合法的数据集返回,当然就不能next()啦。如果你这样:
        if(rs!=null) 
           rs.next();
    就不会报错了。检查一下你的数据源设置和你的代码是否相符吧!
      

  18.   

    while(rs.next()!=null){
      //...
    }