为什么结果集不为空还是说没有当前行
在myclicpse中,用聚合函数查行数,/***统计指定条件的数据的总条数*sql:selectcount(*)fromtablewhereid>?*@return计算...
在myclicpse中,用聚合函数查行数,
/**
* 统计指定条件的数据的总条数
* sql:select count(*) from table where id > ?
* @return 计算的总条数
*/
public int totalRecord(String sql,Object...obj) throws DataBaseException{
if(sql == null || sql.toLowerCase().indexOf("count") == -1)
throw new DataBaseException("不是一个合法的聚合函数查询语句");
rs= this.executeQuery(sql, obj);//一个方法 返回ResultSet
System.out.println(rs);
try {
System.out.println("成功执行到217行");
System.out.println("sql 是"+sql);
if(rs!=null){
System.out.println("结果集不为空");
}
System.out.println("object值"+rs.Int(1));
return rs.getInt(1);
} catch (SQLException e) {
throw new DataBaseException(e);
}finally{
this.release(rs);//释放资源
}
}
---------------------运行结果如下。
com.microsoft.sqlserver.jdbc.SQLServerConnection@1bd4722
obj为null返回
这里打出select count(*) from bbsTopic传入参数null成功到132
com.microsoft.sqlserver.jdbc.SQLServerResultSet@b169f8
成功执行到217行
sql 是select count(*) from bbsTopic
结果集不为空
com.microsoft.sqlserver.jdbc.SQLServerException: ResultSet 没有当前行。
0
------
哪位告诉我哪里错了啊?找了几个小时了也没找出,555555
非常感谢3楼,,
真的很奇怪啊,
为什么分开写就没错了, 展开
/**
* 统计指定条件的数据的总条数
* sql:select count(*) from table where id > ?
* @return 计算的总条数
*/
public int totalRecord(String sql,Object...obj) throws DataBaseException{
if(sql == null || sql.toLowerCase().indexOf("count") == -1)
throw new DataBaseException("不是一个合法的聚合函数查询语句");
rs= this.executeQuery(sql, obj);//一个方法 返回ResultSet
System.out.println(rs);
try {
System.out.println("成功执行到217行");
System.out.println("sql 是"+sql);
if(rs!=null){
System.out.println("结果集不为空");
}
System.out.println("object值"+rs.Int(1));
return rs.getInt(1);
} catch (SQLException e) {
throw new DataBaseException(e);
}finally{
this.release(rs);//释放资源
}
}
---------------------运行结果如下。
com.microsoft.sqlserver.jdbc.SQLServerConnection@1bd4722
obj为null返回
这里打出select count(*) from bbsTopic传入参数null成功到132
com.microsoft.sqlserver.jdbc.SQLServerResultSet@b169f8
成功执行到217行
sql 是select count(*) from bbsTopic
结果集不为空
com.microsoft.sqlserver.jdbc.SQLServerException: ResultSet 没有当前行。
0
------
哪位告诉我哪里错了啊?找了几个小时了也没找出,555555
非常感谢3楼,,
真的很奇怪啊,
为什么分开写就没错了, 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询