dbFetch,MySQLResult,numeric-method
Execute a SQL statement on a database connection.
To retrieve results a chunk at a time, use dbSendQuery
,
dbFetch
, then dbClearResult
. Alternatively, if you want all the
results (and they'll fit in memory) use dbGetQuery
which sends,
fetches and clears for you.
Usage
# S4 method for MySQLResult,numeric
dbFetch(res, n = -1, ...)# S4 method for MySQLResult,numeric
fetch(res, n = -1, ...)
# S4 method for MySQLResult,missing
dbFetch(res, n = -1, ...)
# S4 method for MySQLResult,missing
fetch(res, n = -1, ...)
# S4 method for MySQLConnection,character
dbSendQuery(conn, statement)
# S4 method for MySQLResult
dbClearResult(res, ...)
# S4 method for MySQLResult
dbGetInfo(dbObj, what = "", ...)
# S4 method for MySQLResult
dbGetStatement(res, ...)
# S4 method for MySQLResult,missing
dbListFields(conn, name, ...)
Arguments
- res, dbObj
- n
maximum number of records to retrieve per fetch. Use
-1
to retrieve all pending records; use0
for to fetch the default number of rows as defined inMySQL
- ...
Unused. Needed for compatibility with generic.
- conn
- statement
a character vector of length one specifying the SQL statement that should be executed. Only a single SQL statment should be provided.
- what
optional
- name
Table name.
Details
fetch()
will be deprecated in the near future; please use
dbFetch()
instead.
Examples
# NOT RUN {
if (mysqlHasDefault()) {
con <- dbConnect(RMySQL::MySQL(), dbname = "test")
dbWriteTable(con, "arrests", datasets::USArrests, overwrite = TRUE)
# Run query to get results as dataframe
dbGetQuery(con, "SELECT * FROM arrests limit 3")
# Send query to pull requests in batches
res <- dbSendQuery(con, "SELECT * FROM arrests")
data <- dbFetch(res, n = 2)
data
dbHasCompleted(res)
dbListResults(con)
dbClearResult(res)
dbRemoveTable(con, "arrests")
dbDisconnect(con)
}
# }