首页 > 解决方案 > Java 的 ResultSet 实现是否重新执行 SQL 语句以检索额外的 ResultSet 数据

问题描述

我在https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-implementation-notes.html上读到MySQL 的 JDBC 实现实际上将整个结果集加载到内存中,但是也可以配置为从数据库中逐行流式传输数据。我试图理解的过程是 MySQL 数据库提供的底层 Streaming 过程。当您在数据库上执行 sql 语句时,假设您正在使用 MySQL 的流式传输功能,数据库是否首先生成 SQL 语句中定义的所有必要数据并将其存储在某处,然后将其逐行加载到输出流中然后由 MySQL 连接器检索并进一步加载到结果集中并存储在内存中?

如果有人能为我概述这个过程,我将不胜感激。

我试图了解使用 SQL 是否更有效,LIMIT并且OFFSET与将所有数据提取到ResultSet.

标签: javamysqljdbc

解决方案


推荐阅读