MySQLが提供する公式のJDBCドライバーConnector/Jを使用していると想定します。
statement.setFetchSize(Integer.MIN_VALUE);
を使用して、結果を行ごとにストリーミングするようにJDBC(およびMySQL)に明示的に指示しています。
MYSQLDocs から :
Integer.MIN_VALUE
以外の値 フェッチサイズはMySQLによって無視され、標準の動作が適用されます。結果セット全体がJDBCドライバーによってフェッチされます。
setFetchSize()
を使用しないでください 、したがって、JDBCドライバーはデフォルト値(0
)を使用します )、または値を0
に設定します 明示的に。 0
の値を使用する また、JDBCがMySQLカーソルを使用しないようにします。これは、MySQLおよびConnector/Jのバージョンと構成によっては発生する可能性があります。