java中如何获取ResultSet rs结果集中的条数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中如何获取ResultSet rs结果集中的条数?相关的知识,希望对你有一定的参考价值。
参考技术A方法一:利用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_");
我可以在 Java 中使用 resultset.getBoolean 在 SQL 中获取 Tinyint
【中文标题】我可以在 Java 中使用 resultset.getBoolean 在 SQL 中获取 Tinyint【英文标题】:Can I use resultset.getBoolean in Java to get Tinyint in SQL 【发布时间】:2015-05-21 18:27:55 【问题描述】:是否可以使用 rs.getboolean 方法从 SQL 中获取 tinyint(0/1) 的值? 像这样:
while (rs.next())
boolean noUse= rs.getBoolean(1);
如果这不起作用,我想你必须这样做:
while (rs.next())
boolean noUse= rs.getByte(1)==1;
感谢您帮助我。
【问题讨论】:
【参考方案1】:选项 1 应该可以正常工作,我也使用过。
while (rs.next())
boolean noUse= rs.getBoolean(1);
在mysql中,tinyint充当布尔值(但将物理值保存为0/1) 执行上述代码时,
如果字段值 = 0 那么 ;不使用=假 else if field value= 1 then ; noUse=true
【讨论】:
以上是关于java中如何获取ResultSet rs结果集中的条数?的主要内容,如果未能解决你的问题,请参考以下文章