如果库中无记录,输出提示,类似asp的
if rs.eof and rs.bof then
response.write "暂无记录!"
end if想尽办法,在JSP中就是搞不定,帮帮我!

解决方案 »

  1.   

    你的rs.next()返回的是什么值?(java中)
      

  2.   

    if(rs == null){
       out.print("暂无记录!");
    }else{
       while(rs.next()){
          //输出记录
       }
    }
      

  3.   

    while(rs.next())
    {
    ...
    }
    不输出任何东东,数据库中已无数据,但应该怎样判断呢,输出提示"暂无记录!"?!
      

  4.   

    if(rs == null){
       out.print("暂无记录!");
    }else{
       while(rs.next()){
          //输出记录
       }
    }
    这句也不行呀,有记录照常输出,没有记录了就空白什么都不显示.
      

  5.   

    if(!rs.isBeforeFirst()){
      out.println("无记录");
    }else{
     //输出记录
    }
      

  6.   

    if(!rs.next())
       out.print("no recordset");
      

  7.   

    dreamover(梦醒了)  做的是对的,但发现以下全是正确的:
    rs.next(),rs.isFirst(),rs.isLast(),rs.isBeforeFirst(),rs.isAfterLast
    真不知究竟用哪个从道理上来说理合适?!
      

  8.   

    只有rs.isBeforeFirst()是对的,rs.isFirst(),rs.isLast(),rs.isAfterLast这三个有记录的时候,值也是false,无法判断rs.next()不能用,因为他会将记录往下移动一格,用这个判断的话,有记录的时候输出记录会少一条
      

  9.   

    rs.next()不能用,因为他会将记录往下移动一格,用这个判断的话,有记录的时候输出记录会少一条
    ********************************************************************************
    不可能会少的:
    next
    boolean next()
                 throws SQLException将指针从当前位置下移一行。ResultSet 指针最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。 
    如果开启了对当前行的输入流,则调用 next 方法将隐式关闭它。读取新行时,将清除 ResultSet 对象的警告链。 
    返回:
    如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false 
    抛出: 
    SQLException - 如果发生数据库访问错误
    *************************************************************
    只要在判断的时候加上对有记录和没有记录的双重处理就可以了:
    while(true)//无条件循环
    {
        //由if语句来处理是否退出循环
        if(rs.next()){
            //有记录就处理记录
        }else{
            break;//没有记录就退出循环
        }
    }
      

  10.   

    经测试,的确如此,isBeforeFirst()是正解,相当感谢!
      

  11.   

    if(!rs.next())
       out.print("暂无记录!");千万不能用rs == null 来作判断。这样是错的,就是rs里没有纪录,rs也不是等于为null。就用next()方法!