rs.last();//为什么到这一步DEBUG会停住这一步执行完毕后,指针已经在rs的结尾位置了。你的JDBC不支持双向滚动,
而在 int count = rs.getRow(); 中,rs.getRow()方法是先将rs的指针移动到头记录,然后滚动到尾记录,来得到记录的总数。由于你的JDBC不支持双向滚动,当然不能将指针重新移动rs的头记录上了!
而在 int count = rs.getRow(); 中,rs.getRow()方法是先将rs的指针移动到头记录,然后滚动到尾记录,来得到记录的总数。由于你的JDBC不支持双向滚动,当然不能将指针重新移动rs的头记录上了!
rs.next(); // if only one record
}
catch(Exception e){
}
JDBC已经设置为双向滚动,
而上面的地方我一般写做:
statement = conn.getConnection().createStatement(ResultSet.
TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
String s = "select * from w_club where club_id = "+clubid+"",";
resultset = statement.executeQuery(s);另外你的rs.close();位置不对,应该是在for循环里面。