java – MySQL遍历每一行(大表)

前端之家收集整理的这篇文章主要介绍了java – MySQL遍历每一行(大表)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一张带有ID和名字的桌子.我想通过这个表的每一行.
TheID是主键和auto_increment.

我不能使用(?)单个查询获取所有行,因为表格很大.
我正在为每一个结果做点什么.我希望有可能停止这项任务,并在以后继续.

我以为我可以这样做:

for (int i = 0; i < 90238529; i++) {
  System.out.println("Current ID :" + i);
  query = "SELECT name FROM table_name WHERE id = " + i;
  ...
}

但这不起作用,因为auto_increment跳过了一些数字.

如上所述,我需要一个选项来停止这项任务,让我能够在我离开的地方重新开始.与上面的示例代码一样,我知道当前条目的ID,如果我想再次启动它,我只需设置int i = X.

解决方法

使用单个查询获取所有记录:
query = "SELECT name FROM table_name WHERE id > ? ORDER BY id";

然后迭代ResultSet并读取您希望的记录数(您不必读取ResultSet返回的所有行).

下次运行查询时,传递上一次执行中获得的最后一个ID.

原文链接:https://www.f2er.com/java/121685.html

猜你在找的Java相关文章