【发布时间】:2011-11-21 10:40:54
【问题描述】:
我正在运行一个选择命令,该命令返回 1,000,000 行迭代 ResultSet。下面的代码执行需要 5 分钟。
有没有更快的迭代 ResultSet 的方法?
conn = getDbConnection();
Statement createStatement = conn.createStatement();
ResultSet rs = createStatement.executeQuery("Select * from myTable");
while (rs.next())
{
//do nothing
}
java中有没有办法在遍历结果集中的所有记录时提高效率。
谢谢
【问题讨论】:
-
你可以让数据库使用存储过程或类似的东西来执行逻辑。
-
为什么要选择
1000000行到内存中? -
在不知道您要达到什么目标的情况下回答这个问题是不可能的。您发布的代码选择了大量行,然后对它们进行迭代,什么也不做。让我们知道您要做什么,然后您会得到一些帮助。
-
如果直接在 DB 中执行相同的查询,会不会更快?
标签: java