java中如何获取ResultSet rs结果集中的条数?

请问一下,怎样可以获取结果集的条数?
如果不用以下方式ResultSet rs.last(); int tiaoshu=rs.getRow();那么有其它的方法吗?我以前好像有点印象是用MetaData类包装一下,然后用getRow()什么之类的,也记得不太清楚了。

方法一:利用循环ResultSet的元素来获得ResultSet的总行数
示例代码如下:
ResultSet rs;
int rowCount = 0;
while(rset.next()){
rowCount++;
}
方法二:利用sql语句中的count函数获得ResultSet的总行数
示例代码如下:
String sql = "select count(*) record_ from ( select * from yourtable t where t.column_ = 'value_' )";
ResultSet rs = ps.executeQuery(sql);
int rowCount = 0;
if(rs.next()){
rowCount=rs.getInt("record_");
}
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-02-28
PreparedStatement pstate = null;String sql = "SELECT * FROM CHE_GOOD WHERE TITLE LIKE ?";
pstate = con.prepareStatement(sql,
java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
java.sql.ResultSet.CONCUR_READ_ONLY);
pstate.setString(1, "%" +greatwqs+ "%");
}
ResultSet result = pstate.executeQuery();
result.last();
int rowcount = result.getRow(); 这个是从项目里面截取下来的,主要是pstate = con.prepareStatement(sql,
java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
java.sql.ResultSet.CONCUR_READ_ONLY);进行结果集的滚动. 还有什么问题再问..本回答被网友采纳
第2个回答  2013-05-05
select count(*) from tablename;返回的就是记录条数了,写到你的封装类里去。ResultSet rs是没有直接取得行数的方法的
相似回答