网上有人说用这种方式获取:
ResultSet里面有,你先把rs.last(),再getRow(),就是总行数。
经验证此方法不可取。
java.sql.ResultSet 当你执行了executeQuery后,jdbc会返回给你一个结果集,这个结果集如果你要得到里面的值,就执行靠使用rs.next()的方法逐行的移动游标获得,这因为如此,所以在游标没有移动到最后一条记录之前,你是无法获得行数的,也就说ResultSet是无法返回数据库行数的.如果你要或具体的行数,唯一的方法就是执行select count(*) from table 这样的语句
ResultSet里面有,你先把rs.last(),再getRow(),就是总行数。
经验证此方法不可取。
java.sql.ResultSet 当你执行了executeQuery后,jdbc会返回给你一个结果集,这个结果集如果你要得到里面的值,就执行靠使用rs.next()的方法逐行的移动游标获得,这因为如此,所以在游标没有移动到最后一条记录之前,你是无法获得行数的,也就说ResultSet是无法返回数据库行数的.如果你要或具体的行数,唯一的方法就是执行select count(*) from table 这样的语句
本文探讨了网上流传的一种获取Java中ResultSet总行数的方法:通过rs.last()和getRow()组合使用来尝试获取行数。文章指出这种方法并不可行,并解释了原因。正确的方式应当是使用SQL COUNT(*)查询。
504

被折叠的 条评论
为什么被折叠?



