sql >> Databasteknik >  >> RDS >> Mysql

Streaming MySql ResultSet med fast antal resultat åt gången

Jag antar att du använder den officiella MySQL-levererade JDBC-drivrutinen Connector/J.

Du säger uttryckligen till JDBC (och MySQL) att strömma resultaten rad för rad med statement.setFetchSize(Integer.MIN_VALUE);

Från MYSQL Docs :

Alla andra värden än Integer.MIN_VALUE för hämtningsstorleken ignoreras av MySQL, och standardbeteendet gäller. Hela resultatuppsättningen kommer att hämtas av JDBC-drivrutinen.

Använd inte setFetchSize() , så JDBC-drivrutinen kommer att använda standardvärdet (0 ), eller ställ in värdet på 0 uttryckligen. Använder värdet 0 kommer också att säkerställa att JDBC inte använder MySQL-markörer, vilket kan inträffa beroende på din MySQL- och Connector/J-version och konfiguration.



  1. Främmande nyckel till ett av många bord?

  2. Hur man aktiverar Event Scheduler när jag öppnar MySQL Server

  3. Hur kopierar man en post i en SQL-tabell men byter ut det unika ID:t för den nya raden?

  4. Tillkännager ClusterControl 1.7.2:Förbättrad PostgreSQL Backup &Support för TimescaleDB &MySQL 8.0