sf (version 0.3-4)

st_write: Write simple features object to file or database

Description

Write simple features object to file or database Write simple feature table to a spatial database

Usage

st_write(obj, dsn, layer = basename(dsn),
  driver = guess_driver_can_write(dsn), ..., dataset_options = NULL,
  layer_options = NULL, quiet = FALSE, factorsAsCharacter = TRUE)

st_write_db(conn = NULL, obj, table = substitute(obj), geom_name = "wkb_geometry", ..., overwrite = FALSE, append = FALSE, binary = TRUE, debug = FALSE)

Arguments

obj
object of class sf or sfc
dsn
data source name (interpretation varies by driver - for some drivers, dsn is a file name, but may also be a folder or contain a database name)
layer
layer name (varies by driver, may be a file name without extension); if layer is missing, the basename of dsn is taken.
driver
character; driver name to be used, if missing, a driver name is guessed from dsn; st_drivers() returns the drivers that are available with their properties; links to full driver documentation are found at http://www.gdal.org/ogr_formats.html.
...
ignored for st_write, for st_write_db arguments passed on to dbWriteTable
dataset_options
character; driver dependent dataset creation options; multiple options supported.
layer_options
character; driver dependent layer creation options; multiple options supported.
quiet
logical; suppress info on name, driver, size and spatial reference
factorsAsCharacter
logical; convert factor objects into character strings (default), else into numbers by as.numeric.
conn
open database connection
table
name for the table in the database
geom_name
name of the geometry column in the database
overwrite
logical; should table be dropped first?
append
logical; append to table? (NOTE: experimental, might not work)
binary
logical; use well-known-binary for transfer?
debug
logical; print SQL statements to screen before executing them.

Details

columns (variables) of a class not supported are dropped with a warning.

See Also

st_drivers

Examples

Run this code
nc = st_read(system.file("shape/nc.shp", package="sf"))
st_write(nc, "nc.shp")

## Not run: ------------------------------------
# library(sp)
# example(meuse, ask = FALSE, echo = FALSE)
# st_write(st_as_sf(meuse), "PG:dbname=postgis", "meuse_sf",
#     layer_options = c("OVERWRITE=yes", "LAUNDER=true"))
# demo(nc, ask = FALSE)
# st_write(nc, "PG:dbname=postgis", "sids", layer_options = "OVERWRITE=true")
## ---------------------------------------------
## Not run: ------------------------------------
# library(sp)
# data(meuse)
# sf = st_as_sf(meuse, coords = c("x", "y"), crs = 28992)
# library(RPostgreSQL)
# conn = dbConnect(PostgreSQL(), dbname = "postgis")
# st_write_db(conn, sf, "meuse_tbl", drop_table = FALSE)
## ---------------------------------------------
  

Run the code above in your browser using DataLab