R: Connect to a DuckDB database instance

dbConnect,duckdb_driver-method {duckdb} | R Documentation

## Connect to a DuckDB database instance

### Description

`dbConnect()` connects to a database instance.

`dbDisconnect()` closes a DuckDB database connection, optionally shutting down the associated instance.

`duckdb()` creates or reuses a database instance.

`duckdb_shutdown()` shuts down a database instance.

### Usage

    ## S4 method for signature 'duckdb_driver'
    dbConnect(
      drv,
      dbdir = DBDIR_MEMORY,
      ...,
      debug = getOption("duckdb.debug", FALSE),
      read_only = FALSE,
      timezone_out = "UTC",
      tz_out_convert = c("with", "force"),
      config = list()
    )

    ## S4 method for signature 'duckdb_connection'
    dbDisconnect(conn, ..., shutdown = FALSE)

    duckdb(dbdir = DBDIR_MEMORY, read_only = FALSE, config = list())

    duckdb_shutdown(drv)

### Arguments

`drv` | Object returned by `duckdb()`
`dbdir` | Location for database files. Should be a path to an existing directory in the file system. With the default, all data is kept in RAM
`...` | Ignored
`debug` | Print additional debug information such as queries
`read_only` | Set to `TRUE` for read-only operation
`timezone_out` | The time zone returned to R, defaults to `"UTC"`, which is currently the only timezone supported by duckdb. If you want to display datetime values in the local timezone, set to `Sys.timezone()` or `""`.
`tz_out_convert` | How to convert timestamp columns to the timezone specified in `timezone_out`. There are two options: `"with"`, and `"force"`. If `"with"` is chosen, the timestamp will be returned as it would appear in the specified time zone. If `"force"` is chosen, the timestamp will have the same clock time as the timestamp in the database, but with the new time zone.
`config` | Named list with DuckDB configuration flags
`conn` | A `duckdb_connection` object
`shutdown` | Set to `TRUE` to shut down the DuckDB database instance that this connection refers to.

### Value

`dbConnect()` returns an object of class duckdb_connection.

`duckdb()` returns an object of class duckdb_driver.

`dbDisconnect()` and `duckdb_shutdown()` are called for their side effect.

### Examples

    drv <- duckdb()
    con <- dbConnect(drv)

    dbGetQuery(con, "SELECT 'Hello, world!'")

    dbDisconnect(con)
    duckdb_shutdown(drv)

    # Shorter:
    con <- dbConnect(duckdb())
    dbGetQuery(con, "SELECT 'Hello, world!'")
    dbDisconnect(con, shutdown = TRUE)

[Package duckdb version 0.2.7 Index]