- JDBC中的ResultSet API没有直接获取记录条数的方法,现介绍几个:
- 方法一:利用ResultSet的getRow方法来获得ResultSet的总行数
- Java代码
- ResultSet rs;
- rs.last(); //移到最后一行
- int rowCount = rs.getRow(); //得到当前行号,也就是记录数
- rs.beforeFirst(); //如果还要用结果集,就把指针再移到初始化的位置
- 方法二:利用循环ResultSet的元素来获得ResultSet的总行数
- Java代码
- ResultSet rs;
- int rowCount = 0;
- while(rset.next())
- {
- rowCount++;
- }
- 方法三:利用sql语句中的count函数获得ResultSet的总行数
- Java代码
- 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_");
- }
- ResultSet rs = stmt.executeQuery("select count(*) from table");
- rs.next();
- int i = rs.getInt(1);