Ik ga ervan uit dat je de officiële door MySQL geleverde JDBC-driver Connector/J gebruikt.
Je vertelt JDBC (en MySQL) expliciet om de resultaten rij voor rij te streamen met statement.setFetchSize(Integer.MIN_VALUE);
Van MYSQL-documenten :
Elke andere waarde dan Integer.MIN_VALUE
voor de ophaalgrootte wordt genegeerd door MySQL en het standaardgedrag is van toepassing. De volledige resultatenset wordt opgehaald door de JDBC-driver.
Gebruik geen setFetchSize()
, dus het JDBC-stuurprogramma gebruikt de standaardwaarde (0
), of stel de waarde in op 0
uitdrukkelijk. De waarde van 0
gebruiken zal er ook voor zorgen dat JDBC geen MySQL-cursors gebruikt, wat kan gebeuren afhankelijk van uw MySQL- en Connector/J-versies en configuratie.