dbSendQuery {DBI} | R Documentation |
The function dbSendQuery
only submits and synchronously executes the
SQL statement to the database engine. It does not extract any
records — for that you need to use the function dbFetch
, and
then you must call dbClearResult
when you finish fetching the
records you need. For interactive use, you should almost always prefer
dbGetQuery
.
dbSendQuery(conn, statement, ...)
conn |
A |
statement |
a character vector of length 1 containing SQL. |
... |
Other parameters passed on to methods. |
An object that inherits from DBIResult
.
If the statement generates output (e.g., a SELECT
statement) the
result set can be used with dbFetch
to extract records.
Once you have finished using a result, make sure to disconnect it
with dbClearResult
.
The statement is submitted to the database server and the DBMS executes the
statement, possibly generating vast amounts of data. Where these data live
is driver-specific: some drivers may choose to leave the output on the server
and transfer them piecemeal to R, others may transfer all the data to the
client – but not necessarily to the memory that R manages. See individual
drivers dbSendQuery
documentation for details.
Other connection methods: dbDisconnect
,
dbExistsTable
,
dbGetException
, dbGetQuery
,
dbListFields
, dbListResults
,
dbListTables
, dbReadTable
,
dbRemoveTable
if (require("RSQLite")) { con <- dbConnect(RSQLite::SQLite(), ":memory:") dbWriteTable(con, "mtcars", mtcars) res <- dbSendQuery(con, "SELECT * FROM mtcars WHERE cyl = 4;") dbFetch(res) dbClearResult(res) dbDisconnect(con) }