copy_inline function

Use a local data frame in a dbplyr query

Use a local data frame in a dbplyr query

This is an alternative to copy_to() that does not need write access and is faster for small data.

copy_inline(con, df, types = NULL)

Arguments

  • con: A database connection.
  • df: A local data frame. The data is written directly in the SQL query so it should be small.
  • types: A named character vector of SQL data types to use for the columns. The data types are backend specific. For example for Postgres this could be c(id = "bigint", created_at = "timestamp", values = "integer[]"). If NULL, the default, the types are determined from df.

Returns

A tbl_lazy.

Details

It writes the data directly in the SQL query via the VALUES clause.

Examples

df <- data.frame(x = 1:3, y = c("a", "b", "c")) con <- DBI::dbConnect(RSQLite::SQLite(), ":memory:") copy_inline(con, df) copy_inline(con, df) %>% dplyr::show_query()

See Also

copy_to() to copy the data into a new database table.

  • Maintainer: Hadley Wickham
  • License: MIT + file LICENSE
  • Last published: 2024-03-19