java如何获取SQL查询结果集中的行数和列数
来源:互联网 发布:淘宝客转链工具 编辑:程序博客网 时间:2024/06/05 15:18
在Java中,获得ResultSet的总行数的方法有以下几种。
第一种:利用ResultSet的getRow方法来获得ResultSet的总行数
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourTableName");
rset.last();
int rowCount = rset.getRow(); //获得ResultSet的总行数
第二种:利用循环ResultSet的元素来获得ResultSet的总行数
ResultSet rset = stmt.executeQuery("select * from yourTableName");
int rowCount = 0;
while(rset.next()) {
rowCount++;
}
rowCount就是ResultSet的总行数。
第三种:利用sql语句中的count函数获得ResultSet的总行数
ResultSet rset = stmt.executeQuery("select count(*) totalCount from yourTableName");
int rowCount = 0;
if(rset.next()) {
rowCount=rset .getInt("totalCount ");
}
rowCount就是ResultSet的总行数。
· *****************************************************************************************************************
·Java中获得ResultSet的总列数是非常简单事情,因为Java中ResultSet提供了ResultSetMetaData工具类,ResultSetMetaData 是ResultSet的元数据的集合说明。
java获得ResultSet总列数的代码如下:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourtable");
ResultSetMetaData rsmd = rset.getMetaData() ;
int columnCount = rsmd.getColumnCount();
columnCount 就是ResultSet的总列数。
java获取数据行数的代码如下:
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs = stmt.executeQuery(sql);
rs.last();
int length = rs.getRow();
length的值就是行数了。如果在获取了行数后,还需要继续使用当前数据集rs,则需要运行rs.beforeFirst();将游标回到初始位置。
Statement创建的通用格式为:
Statement stmt=con.createStatement(int type,int concurrency);
参数的说明:
参数 int type
ResultSet.TYPE_FORWORD_ONLY 结果集的游标只能向下滚动。
ResultSet.TYPE_SCROLL_INSENSITIVE 结果集的游标可以上下移动,当数据库变化时,当前结果集不变。
ResultSet.TYPE_SCROLL_SENSITIVE 返回可滚动的结果集,当数据库变化时,当前结果集同步改变。
参数 int concurrency
ResultSet.CONCUR_READ_ONLY 不能用结果集更新数据库中的表。
ResultSet.CONCUR_UPDATETABLE 能用结果集更新数据库中的表。
当使用ResultSet re=stmt.executeQuery(SQL语句)查询后,可以使用下列方法获得信息:
public boolean previous() 将游标向上移动,该方法返回boolean型数据,当移到结果集第一行之前时,返回false。
public void beforeFirst 将游标移动到结果集的初始位置,即在第一行之前。
public void afterLast() 将游标移到结果集最后一行之后。
public void first() 将游标移到结果集的第一行。
public void last() 将游标移到结果集的最后一行。
public boolean isAfterLast() 判断游标是否在最后一行之后。
public boolean isBeforeFirst() 判断游标是否在第一行之前。
public boolean ifFirst() 判断游标是否指向结果集的第一行。
public boolean isLast() 判断游标是否指向结果集的最后一行。
public int getRow() 得到当前游标所指向行的行号,行号从1开始,如果结果集没有行,返回0。
public boolean absolute(int row) 将游标移到参数row指定的行号。如果row取负值,就是倒数的行数,absolute(-1)表示移到最后一行,absolute(-2)表示移到倒数第2行。当移动到第一行前面或最后一行的后面时,该方法返回false。
本文来源于时光漂流瓶 http://www.9usb.net , 原文地址: http://www.9usb.net/200903/java-resultset-row.html
- java如何获取SQL查询结果集中的行数和列数
- java如何获取SQL查询结果集中的行数和列数
- java如何获取SQL查询结果集中的行数和列数
- 获取SQL查询结果集中的行数和列数
- java获取SQL查询结果集中的行数和列数
- 如何利用sql包下的ResultSet来获取查询数据的列数及行数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- 如何获取ResultSet的行数和列数
- java中获取二维数组的行数和列数
- java获取ResultSet的行数列数
- 获取ResultSet的行数和列数
- 浏览器可以注册的事件
- 进程通信的五个种类
- 0040算法笔记——【分支限界法】批处理作业调度问题
- Spring mvc3的ajax
- php函数返回值
- java如何获取SQL查询结果集中的行数和列数
- hdu 1690 Bus System
- 高清壁纸大全:2013年桌面日历壁纸免费下载
- Java集合简述(二)
- Objective-C 2.0 Note
- MP3解码详解(还清高高手指点)2
- GCD最大公约数、LCM最小公倍数 数论入门
- CSS3背景色渐变(各浏览器)
- Java多线程发展简史