我在结果集中获得了大量记录。我担心的是:
等待你的答案.. 非常感谢
答案 0 :(得分:2)
当您遍历结果集时,可以使用Statement.setFetchSize()来控制提取到内存中的记录数。但总的来说,我认为它取决于JDBC驱动程序如何处理该设置以及它如何将获取的记录存储在内存中。
编辑:这是一个例子(理论上结果集只会在内存中保留1条记录):
Statement stmt = con.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.FETCH_FORWARD);
stmt.setFetchSize(1);
ResultSet srs = stmt.executeQuery("SELECT COF_NAME, PRICE FROM COFFEES");
while (srs.next()) {
String name = srs.getString("COF_NAME");
float price = srs.getFloat("PRICE");
// Do your processing...
}