如何获取ResultSet的行数和列数(转)
如何获取ResultSet的行数和列数
http://www.cnblogs.com/kane1990/archive/2011/12/25/2300961.html
方法1:用select count语句,然后直接从ResultSet里面获取结果:
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("select count(*) as rowCount from tableName");
resultSet.next();
int rowCount = resultSet.getInt("rowCount");
方法2:遍历Resultset,用一个变量记录行数:
int count = 0;
while(resultSet.next()) {
count = count + 1;
}
方法3:创建Statement的时候,加上两个参数,这样获得的结果集,指针就可以在其中自由移动
Statement statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet resultSet = statement.executeQuery("select * from " + tableName);
int rowCount = 0;
resultSet.last();
rowCount = resultSet.getRow();
//其中resultSet.last()就是将指针移动到结果集的最后一条记录;然后用resultSet.getRow()获取指针当前所在的行号(从1开始)
//如果接下来你还要使用结果集,别忘了将指针移到第一行:
resultSet.first();