如何在java中获取结果集的长度或大小
我想知道执行特定查询后结果集中有多少行如何在java中获取结果集的长度或大小,java,jdbc,Java,Jdbc,我想知道执行特定查询后结果集中有多少行 ResultSet rs = ps.executeQuery(); 如何获得rs的大小??? 通过执行while循环,提前thanx: int size=0; while (rs.next()) { size++; } 如果只需要结果集中的行数,可以执行以下操作: int size= 0; if (rs != null) { rs.beforeFirst(); rs.last(); size = rs.getRow
ResultSet rs = ps.executeQuery();
如何获得rs的大小???
通过执行while循环,提前thanx:
int size=0;
while (rs.next()) {
size++;
}
如果只需要
结果集中的行数,可以执行以下操作:
int size= 0;
if (rs != null)
{
rs.beforeFirst();
rs.last();
size = rs.getRow();
}
您不需要迭代它并计算行数。您可以尝试以下简单的方法
boolean b = rs.last();
int numberOfRecords = 0;
if(b){
numberOfRecords = rs.getRow();
}
这只能保证对可滚动的结果集有效,当调用beforeFirst()
或last()
时(尽管有些实现不这样做),仅键入forward-only结果集应该抛出一个SQLException
,这意味着通过网络读取整个表,然后丢弃数据,相反,只执行count(*)sql查询要好得多