Learn R Programming

RMySQL (version 0.10.2)

dbNextResult: Fetch next result set from an SQL script or stored procedure (experimental)

Description

SQL scripts (i.e., multiple SQL statements separated by ';') and stored procedures oftentimes generate multiple result sets. These generic functions provide a means to process them sequentially. dbNextResult fetches the next result from the sequence of pending results sets; dbMoreResults returns a logical to indicate whether there are additional results to process.

Usage

dbNextResult(con, ...)

## S3 method for class 'MySQLConnection': dbNextResult(con, ...)

dbMoreResults(con, ...)

## S3 method for class 'MySQLConnection': dbMoreResults(con, ...)

Arguments

con
a connection object (see dbConnect).
...
any additional arguments to be passed to the dispatched method

Value

  • dbNextResult returns a result set or NULL.

    dbMoreResults returns a logical specifying whether or not there are additional result sets to process in the connection.

Examples

Run this code
if (mysqlHasDefault()) {
con <- dbConnect(RMySQL::MySQL(), dbname = "test", client.flag = CLIENT_MULTI_STATEMENTS)
dbWriteTable(con, "mtcars", datasets::mtcars, overwrite = TRUE)

sql <- "SELECT cyl FROM mtcars LIMIT 5; SELECT vs FROM mtcars LIMIT 5"
rs1 <- dbSendQuery(con, sql)
dbFetch(rs1, n = -1)

if (dbMoreResults(con)) {
   rs2 <- dbNextResult(con)
   dbFetch(rs2, n = -1)
}

dbClearResult(rs1)
dbClearResult(rs2)
dbRemoveTable(con, "mtcars")
dbDisconnect(con)
}

Run the code above in your browser using DataLab