数据库查询数据记录之后,在java中取行数的实例如下:
select count(*) as linesize from SubType where SUPERTYPEID= ?linesize就是行数
select count(*)函数可以获得所有记录的行数。
查找某个表的总行数,用 select count(*) from table是一个好的想法。从结果中得到行值就能获取 table的总行数。然而,如果不用这个方法,想要直接返回行数的方法是没有的,毕竟jdbc是统一的标准,这个标准接口里面没有直接返回table总行数的方法,这点要理解。然而如果能得到ResultSet (内存模拟的视图)可以用 getFetchSize得到总行数。这个方法并不能完全的满足你的要求,但您得明白,对于没有直接提供的方法,除了用某些手段,我们无可奈何。 getFetchSizeint getFetchSize() throws SQLException 获取此 ResultSet 对象的获取大小。返回:此ResultSet 对象的当前获取大小 抛出:SQLException - 如果发生数据库访问错误或在已关闭的结果集上调用此方法getFetchSize() 这个方法//首先,先用SQL查询出来,因为不止一条记录,所以用Lis在去存放//这里是数据层的代码(参考就行)
public List<Inventory>getByCode() {
List<Inventory>list = new ArrayList()
try {
conn = this.db.getConnection()
String sql = "select cInvCode,cInvName,cInvStd,cInvAddCode,cInvABC,dSDate," +
"cComUnitCode,cGroupCode ,iSupplyType,bInTotalCost " +
"from Inventory "
ps = conn.prepareStatement(sql)
rs = ps.executeQuery()
while (rs.next()) {
Inventory ic = new Inventory()
ic.setCInvCode(rs.getString("cInvCode"))
ic.setCInvName(rs.getString("cInvName"))
ic.setCInvStd(rs.getString("cInvStd"))
ic.setCInvABC(rs.getString("cInvABC"))
ic.setCInvAddCode(rs.getString("cInvAddCode"))
ic.setDSDate(rs.getDate("dSDate"))
ic.setCComUnitCode(rs.getString("cComUnitCode"))
ic.setCGroupCode(rs.getString("cGroupCode"))
ic.setISupplyType(rs.getInt("iSupplyType"))
ic.setBInTotalCost(rs.getInt("bInTotalCost"))
list.add(ic)
}
} catch (Exception e) {
e.printStackTrace()
} finally {
try {
rs.close()
this.db.closeAll(conn, ps)
} catch (SQLException e) {
e.printStackTrace()
}
}
return list
}
//然后在业务层里调用这个方法
list.size();//这样你就能取到数据库表有多少条记录了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)