【问题标题】:how get length or size of Resultset in java [duplicate]如何在java中获取Resultset的长度或大小[重复]
【发布时间】:2013-11-18 16:42:15
【问题描述】:

我想知道执行特定查询后结果集中有多少行

ResultSet rs = ps.executeQuery();

如何获得 rs 的大小??? 提前谢谢

【问题讨论】:

    标签: java jdbc


    【解决方案1】:

    如果你只想要ResultSet 中的行数,你可以这样做:

    int size= 0;
    if (rs != null)   
    {  
      rs.beforeFirst();  
      rs.last();  
      size = rs.getRow();  
    }  
    

    【讨论】:

    • 这只能保证适用于可滚动的结果集,当调用beforeFirst()last() 时,仅向前输入结果集应该抛出SQLException(尽管有些实现不这样做)。
    • 这意味着通过网络读取整个表并丢弃数据,最好直接执行 count(*) sql 查询
    【解决方案2】:

    通过while循环:

    int size=0;
    while (rs.next()) {
        size++;
    }
    

    【讨论】:

      【解决方案3】:

      您无需对其进行迭代并计算行数。您可以尝试以下简单的方法

      boolean b = rs.last();
      int numberOfRecords = 0;
      if(b){
          numberOfRecords = rs.getRow();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-10
        • 1970-01-01
        • 2021-02-04
        • 2018-08-09
        • 1970-01-01
        • 2012-02-01
        相关资源
        最近更新 更多