diff --git a/jOOQ/src/main/java/org/jooq/ResultQuery.java b/jOOQ/src/main/java/org/jooq/ResultQuery.java
index a23ad548a3..03b7fd2a27 100644
--- a/jOOQ/src/main/java/org/jooq/ResultQuery.java
+++ b/jOOQ/src/main/java/org/jooq/ResultQuery.java
@@ -60,16 +60,15 @@ import org.jooq.impl.DefaultRecordMapper;
* A query that can return results. Mostly, this is a {@link Select} query used
* for a SELECT statement.
*
- * However, some RDBMS also allow for other constructs, such as Postgres'
- * FETCH ALL IN {cursor-name}. The easiest way to execute such a
- * query is by using
+ *
- *
+ * In order to keep open {@link ResultSet}s and fetch records lazily, use
+ * {@link #fetchLazy()} instead and then operate on {@link Cursor}.
*
* @return The result.
* @throws DataAccessException if something went wrong executing the query
@@ -103,10 +111,12 @@ public interface ResultQuery
- * This will return a {@link ResultSet} wrapping the JDBC driver's
- *
* You can use this method when you want to use jOOQ for query execution,
* but not for result fetching. The returned Another example (for SQLite):
- * DSLContext create = DSL.using(connection, SQLDialect.POSTGRES);
- * Result<Record> result = create.fetch("FETCH ALL IN \"<unnamed cursor 1>\"");
- *
+ * In order to keep open {@link ResultSet}s and fetch records lazily, use
+ * {@link #fetchLazy()} instead and then operate on {@link Cursor}.
*
* @author Lukas Eder
*/
@@ -93,6 +92,15 @@ public interface ResultQuery
- * Result<Record> result = create.fetch("pragma table_info('my_table')");
- * Lifecycle guarantees
This method completes the whole
+ * {@link ConnectionProvider} and {@link ExecuteListener} lifecycles,
+ * eagerly fetching all results into memory. Underlying JDBC
+ * {@link ResultSet}s are always closed. Underlying JDBC
+ * {@link PreparedStatement}s are closed, unless
+ * {@link #keepStatement(boolean)} is set.
+ * ResultSet. Closing this ResultSet may close the
- * producing {@link Statement} or {@link PreparedStatement}, depending on
- * your setting for {@link #keepStatement(boolean)}.
+ * This is the same as calling {@link #fetchLazy()}.
+ * {@link Cursor#resultSet() resultSet()} and will return a
+ * {@link ResultSet} wrapping the JDBC driver's ResultSet.
+ * Closing this ResultSet may close the producing
+ * {@link Statement} or {@link PreparedStatement}, depending on your setting
+ * for {@link #keepStatement(boolean)}.
* ResultSet can also