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.
## S4 method for signature 'MySQLResult,numeric' dbFetch(res, n = -1, ...) ## S4 method for signature 'MySQLResult,numeric' fetch(res, n = -1, ...) ## S4 method for signature 'MySQLResult,missing' dbFetch(res, n = -1, ...) ## S4 method for signature 'MySQLResult,missing' fetch(res, n = -1, ...) ## S4 method for signature 'MySQLConnection,character' dbSendQuery(conn, statement) ## S4 method for signature 'MySQLResult' dbClearResult(res, ...) ## S4 method for signature 'MySQLResult' dbGetInfo(dbObj, what = "", ...) ## S4 method for signature 'MySQLResult' dbGetStatement(res, ...) ## S4 method for signature 'MySQLResult,missing' dbListFields(conn, name, ...)
res, dbObj |
A |
n |
maximum number of records to retrieve per fetch. Use |
... |
Unused. Needed for compatibility with generic. |
conn |
an |
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. |
fetch()
will be deprecated in the near future; please use
dbFetch()
instead.
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) }
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.