R: DBMS Connections which disconnect themselves.

with_db_connection {withr} | R Documentation

## 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)

[Package withr version 2.1.2 Index]