一个数据库查询的问题 在JSP中,执行SQL语句的到一个Statement的对象,如何才能得到此对象总的记录条数。望高人指点。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 查询得到的ResultSet对象if(rs.next()){rs.last();rs.getRow(); //记录数} 查询得到的ResultSet对象rs.next();rs.last();rs.getRow(); //记录数 rs.last();rs.getRow(); 或者循环到最后呵呵得到rs.getRow(); 为何之执行到rs.last()接下来的rs.getRow()这条就不执行了? rs=stmt.executeQuery(sql);ResultSetMetaData rmt = rs.getMetaData();int columnCount = rmt.getColumnCount() ; justcode的方法取出的是列数,如何取出行数? 可以看看http://www.9i5e.com/Company.aspx的例子 rs.last();int count=rs.getRow(); int count=rs.getRow();无法执行 int count=rs.getRow();无法执行怎么个无法执行啊?是可以执行的 ResultSetMetaData rsmd = rs.getMetaData(); //获得ResultSet的列编号,类型等int columnCount = rsmd.getColumnCount() ; //获得列数 int count=rs.getRow();怎么会跳过去呢!先看看有没有记录..if(!rs.last()){//没有记录}else{int count=rs.getRow();} if(rs.next()){rs.last();int countRow=rs.getRow(); //记录数} int i=1;while(rs.next()){ i++; // i就为记录总数} rs=stmt.executeQuery(sql);ResultSetMetaData rmt = rs.getMetaData();int columnCount = rmt.getColumnCount() ; 把int count 设为外部变量if(!rs.last()){//没有记录}else{int count=rs.getRow();}是得不到count的值的,count是else的内部变量,另外,此ResultSet是不可滚动的,也就是当rs.last()后这个记录集就没用了,想再读其它记录得重新生成一个记录集,如果要得到可以滚动的记录集可以在创建Statement时指定参数,下面创建的是可滚动、更新的Statement,通过这个Statement获得的ResultSet就是可滚动和更新的Statement sm = cn.createStatement(ResultSet.TYPE_SCROLL_ENSITIVE,ResultSet.CONCUR_READ_ONLY);不过这个Statement很耗资源的,不需要最好不用 怎么用java导出excel文件 使用 Map 容器 作临时数据库的问题? hibernate 连接sql 远程调用求解 Spring+Hibernet配置一对多关联后出现的问题 如果用JS SCRIPT来存取图片? hibernate struts spring 当showgoods.jsp页面首次打开时显示数据 给分贴...越快分越多 javascript 同名对象的事件中如何判断是哪个对象触发的??急 关于得到路径的问题!!! mysql的text最多存多少字? 继续再问JSF问题
{
rs.last();
rs.getRow(); //记录数
}
rs.getRow(); //记录数
rs.getRow(); 或者循环到
最后呵呵
得到rs.getRow();
接下来的rs.getRow()这条就不执行了?
ResultSetMetaData rmt = rs.getMetaData();
int columnCount = rmt.getColumnCount() ;
int count=rs.getRow();
怎么个无法执行啊?是可以执行的
怎么会跳过去呢!先看看有没有记录..
if(!rs.last()){
//没有记录
}else{
int count=rs.getRow();
}
{
rs.last();
int countRow=rs.getRow(); //记录数
}
while(rs.next()){
i++; // i就为记录总数
}
ResultSetMetaData rmt = rs.getMetaData();
int columnCount = rmt.getColumnCount() ;
if(!rs.last()){
//没有记录
}else{
int count=rs.getRow();
}
是得不到count的值的,count是else的内部变量,另外,此ResultSet是不可滚动的,也就是当rs.last()后这个记录集就没用了,想再读其它记录得重新生成一个记录集,如果要得到可以滚动的记录集可以在创建Statement时指定参数,下面创建的是可滚动、更新的Statement,通过这个Statement获得的ResultSet就是可滚动和更新的
Statement sm = cn.createStatement(ResultSet.TYPE_SCROLL_ENSITIVE,ResultSet.CONCUR_READ_ONLY);
不过这个Statement很耗资源的,不需要最好不用