Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

with_db_connection

DBMS Connections which disconnect themselves.


Description

Connections to Database Management Systems which automatically disconnect. In particular connections which are created with DBI::dbConnect() and closed with DBI::dbDisconnect().

Usage

with_db_connection(con, code)

local_db_connection(con, .local_envir = parent.frame())

Arguments

con

For with_db_connection() a named list with the connection(s) to create. For local_db_connection() the code to create a single connection, which is then returned.

code

[any]
Code to execute in the temporary environment

.local_envir

[environment]
The environment to use for scoping.

Value

[any]
The results of the evaluation of the code argument.

See Also

withr for examples

Examples

db <- tempfile()
with_db_connection(
  list(con = DBI::dbConnect(RSQLite::SQLite(), db)), {
    DBI::dbWriteTable(con, "mtcars", mtcars)
})

head_db_table <- function(...) {
  con <- local_db_connection(DBI::dbConnect(RSQLite::SQLite(), db))
  head(DBI::dbReadTable(con, "mtcars"), ...)
}
head_db_table()
unlink(db)

withr

Run Code 'With' Temporarily Modified Global State

v2.4.2
MIT + file LICENSE
Authors
Jim Hester [aut, cre], Kirill Müller [aut], Kevin Ushey [aut], Hadley Wickham [aut], Winston Chang [aut], Jennifer Bryan [ctb], Richard Cotton [ctb], RStudio [cph]
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.