如何获取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();

 

posted @ 2013-05-23 02:28  petercao  阅读(4426)  评论(0编辑  收藏  举报