新青年

放飞梦想 持续优化 追求完美

 

判断ResultSet结果集的记录数是否为0的折衷解决方案

       在网上看到许多判断ResultSet结果集的记录数是否为0的方法都需要结果集next移动,虽然有的说不移动,使用isBeforeFirst函数(获取光标是否位于此 ResultSet 对象的第一行之前),但是我认为光标初始时就是在第一行之前,所以没有意义。

考虑到如果next移动了,需要后退,ResultSet则要设置

TYPE_SCROLL_INSENSITIVE
该常量指示可滚动但通常不受 ResultSet 底层数据更改影响的 ResultSet 对象的类型。

TYPE_SCROLL_SENSITIVE
该常量指示可滚动并且通常受 ResultSet 底层数据更改影响的 ResultSet 对象的类型。

挺麻烦,后来看到一个折衷的解决方案,希望对大家有帮助:

if  ( rs.next())   
{
     // 记录数不为0
}
 else   
{
    //记录数为0
}
      
如果判断后需要依次读取,则可以参考下面代码
    
if(rs.next())   
{   
     do {   
        str = rs.getString(1);
        ...
     }while(rs.next());   
}   
else   
{   
      System.out.println("暂无记录");   
}

posted on 2007-11-08 16:28 新青年 阅读(1182) 评论(2)  编辑 收藏 引用 所属分类: Java/J2EE

评论

# re: 判断ResultSet结果集的记录数是否为0的折衷解决方案 2007-11-18 14:16 Alligator

不知你说的是哪一个语言的。  回复  更多评论   

# re: 判断ResultSet结果集的记录数是否为0的折衷解决方案 2007-12-01 00:17 新青年

这篇文章的分类是Java/J2EE,当然是Java语言!  回复  更多评论   

只有注册用户登录后才能发表评论。

导航

留言簿

随笔分类

文章分类

Java

Web

最新评论

阅读排行榜