e_rows_insert.tbl_dbi | R Documentation |
rows_insert implementation for DBI backends.
## S3 method for class 'tbl_dbi'
e_rows_insert(x, y, by = NULL, ..., copy = FALSE, in_place = FALSE)
x , y |
A pair of data frames or data frame extensions (e.g. a tibble).
|
by |
An unnamed character vector giving the key columns. The key columns
must exist in both By default, we use the first column in |
... |
Other parameters passed onto methods. |
copy |
If |
in_place |
Should When |
Mainly a wrapper around rows_insert
.
Allows for specific implementations should the behavior differ from what's needed by editbl
.
Reason for separate method is to avoid conflicts on package loading.
An object of the same type as x
. The order of the rows and columns of x
is preserved as much as possible. The output has the following properties:
rows_update()
and rows_patch()
preserve the number of rows;
rows_insert()
, rows_append()
, and rows_upsert()
return all existing
rows and potentially new rows; rows_delete()
returns a subset of the
rows.
Columns are not added, removed, or relocated, though the data may be updated.
Groups are taken from x
.
Data frame attributes are taken from x
.
If in_place = TRUE
, the result will be returned invisibly.
Jasper Schelfhout
library(dplyr)
# Set up a test table
conn <- DBI::dbConnect(RSQLite::SQLite(), ":memory:")
artists_df <- data.frame(
ArtistId = c(1,2),
Name = c("AC/DC", "The Offspring")
)
DBI::dbWriteTable(conn, "Artist", artists_df)
# Insert new row
artists <- tbl(conn, "Artist")
DBI::dbBegin(conn)
e_rows_insert(artists,
data.frame(ArtistId = 999, Name = "testArtist"),
in_place = TRUE)
DBI::dbRollback(conn)
DBI::dbDisconnect(conn)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.