什么时候应该指定setFetchSize

什么时候应该指定setFetchSize

本文介绍了什么时候应该指定setFetchSize()?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我看到很多JDBC / MySQL的最佳实践指南告诉我指定setFetchSize()。

I see a lot of "best practices" guides for JDBC/MySQL that tells me to specify setFetchSize().

但是,我不知道何时指定,以及要指定的内容(语句,结果集)。

However, I have no idea when to specify, and what(statement, result set) to specify.

Statement.setFetchSize() or PreparedStatement.setFetchSize()
ResultSet.setFetchSize()




  1. 在这两个中,我应该指定什么?

  2. 来自和,这是我的地方对何时感到困惑

  1. Of these two, what should I specify?
  2. From javadoc and oracle documentation, this is where I get confused about "when"

Javadoc

Oracle Doc

Oracle Doc

如果我错了,请纠正我。这是否意味着setFetchSize在执行查询之前只是Affective?(因此,ResultSet上的setFetchSize是无用的?但是恰好可以随时更改获取大小?)

Please correct me if I am wrong. Does this mean that setFetchSize is only Affective before a query is executed?(Therefore, setFetchSize on a ResultSet is useless? But happens to "The fetch size may be changed at any time"?)

推荐答案

你应该读这个来自结果集的官方文档。它说

You should read this page from the official docs on result sets. It says



stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,
                            java.sql.ResultSet.CONCUR_READ_ONLY);
stmt.setFetchSize(Integer.MIN_VALUE);



实际上,仅设置fetchSize没有对connector-j实现的影响。

In effect, setting only fetchSize have no effect on the connector-j implementation.

这篇关于什么时候应该指定setFetchSize()?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-28 01:09