您将不得不作为一个单独的查询来执行此操作,例如:
SELECt COUNT(1) FROM table_name
某些JDBC驱动程序可能会告诉您,但这是可选行为,更重要的是,该驱动程序可能还不知道。这可能是由于如何优化查询所致,例如,Oracle中的两个示例执行策略是尽快获取所有行或尽快获取第一行。
如果您执行两个单独的查询(一个查询,另一个查询),则需要在同一事务中执行它们。这在Oracle上可以很好地工作,但在其他数据库上可能会出现问题(例如,SQL
Server将显示您未提交的数据或阻止您进行外部未提交的更新,具体取决于您的隔离级别,而Oracle支持的隔离级别可为您提供事务一致的视图数据而不会阻止外部更新)。
通常,尽管有多少行并不重要。通常,这种查询是批处理的或分页的,并且您可以通过加载/处理的行的形式获得进度信息,并且可以(显然)检测到结果集的结尾。



