DBI (version 0.3.0)

dbFetch: Fetch records from a previously executed query.

Description

Fetch the next n elements (rows) from the result set and return them as a data.frame.

Usage

dbFetch(res, n = -1, ...)

fetch(res, n = -1, ...)

Arguments

res
An object inheriting from DBIResult.
n
maximum number of records to retrieve per fetch. Use n = -1 to retrieve all pending records. Some implementations may recognize other special values.
...
Other arguments passed on to methods.

Value

  • a data.frame with as many rows as records were fetched and as many columns as fields in the result set.

Details

fetch is provided for compatibility with older DBI clients - for all new code you are strongly encouraged to use dbFetch. The default method for dbFetch calls fetch so that it is compatible with existing code. Implementors should provide methods for both fetch and dbFetch until fetch is deprecated in 2015.

See Also

close the result set with dbClearResult as soon as you finish retrieving the records you want.

Other DBIResult generics: dbClearResult; dbColumnInfo; dbGetRowCount, dbGetRowCount,DBIResult-method; dbGetRowsAffected, dbGetRowsAffected,DBIResult-method; dbGetStatement, dbGetStatement,DBIResult-method; dbHasCompleted, dbHasCompleted,DBIResult-method

Examples

Run this code
if (!require("RSQLite")) {
con <- dbConnect(RSQLite::SQLite(), ":memory:")
dbWriteTable(con, "mtcars", mtcars)

# Fetch all results
res <- dbSendQuery(con, "SELECT * FROM mtcars WHERE cyl = 4")
dbFetch(res)
dbClearResult(res)

# Fetch in chunks
res <- dbSendQuery(con, "SELECT * FROM mtcars")
while (!dbHasCompleted(res)) {
  chunk <- fetch(res, 10)
  print(nrow(chunk))
}
dbClearResult(res)
dbDisconnect(con)
}

Run the code above in your browser using DataCamp Workspace