Jeg antager, at du bruger den officielle MySQL-leverede JDBC-driver Connector/J.
Du beder udtrykkeligt JDBC (og MySQL) om at streame resultaterne række for række med statement.setFetchSize(Integer.MIN_VALUE);
Fra MYSQL Docs :
Enhver anden værdi end Integer.MIN_VALUE
for hentestørrelsen ignoreres af MySQL, og standardadfærden gælder. Hele resultatsættet vil blive hentet af JDBC-driveren.
Brug enten ikke setFetchSize()
, så JDBC-driveren vil bruge standardværdien (0
), eller indstil værdien til 0
eksplicit. Brug af værdien 0
vil også sikre, at JDBC ikke bruger MySQL-markører, hvilket kan forekomme afhængigt af din MySQL- og Connector/J-version og konfiguration.