shp2pgsql(1)                        PostGIS                       shp2pgsql(1)



NAME
       shp2pgsql - shapefile to postgis loader


SYNTAX
       shp2pgsql [options] shapefile [schema.]table


DESCRIPTION
       The  shp2pgsql  data loader converts ESRI Shape files into SQL suitable
       for insertion into a PostGIS/PostgreSQL database.

       Version: 1.1.5 (2006/10/06)


USAGE
       The <shapefile> is the name of the shape file,  without  any  extension
       information.  For  example,  'roads' would be the name of the shapefile
       comprising the 'roads.shp', 'roads.shx', and 'roads.dbf' files.

       The <tablename>  is  the  (optionally  schema-qualified)  name  of  the
       database table you want the data stored in in the database. Within that
       table, the geometry  will  be  placed  in  the  'geo_value'  column  by
       default.


OPTIONS
       The  loader  has  several operating modes distinguished by command line
       flags:

       (Note that -a, -c, -d and -p are mutually exclusive.)

       -d     Drops the database table before creating a new  table  with  the
              data in the Shape file.

       -a     Appends  data  from the Shape file into the database table. Note
              that to use this option to load multiple files, the  files  must
              have the same attributes and same data types.

       -c     Creates  a  new table and populates it from the Shape file. This
              is the default mode.

       -p     Only produces the table creation SQL code,  without  adding  any
              actual  data.   This can be used if you need to completely sepa-
              rate the table creation and data loading steps.

       -D     Use the PostgreSQL "dump" format for the output data.  This  can
              be  combined  with -a, -c and -d. It is much faster to load than
              the default "insert" SQL format. Use this for  very  large  data
              sets.

       -s [<FROM_SRID>:]<SRID>
              Creates and populates the geometry tables with the specified SRID.
              Optionally specifies that the input shapefile uses the given
              FROM_SRID, in which case the geometries will be reprojected 
              to the target SRID.


       -g <geometry_column>
              Specify the name of the geometry column (mostly useful in append
              mode).

       -k     Keep identifiers case (column, schema and attributes). Note that
              attributes in Shapefile are usually all UPPERCASE.

       -i     Coerce all integers to standard 32-bit integers, do  not  create
              64-bit bigints, even if the DBF header signature appears to war-
              rant it.

       -S     Generate simple Geometries  instead  of  MULTIgeometries.  Shape
              files  don't differ between LINESTRINGs and MULTILINESTRINGs, so
              shp2pgsql generates MULTILINESTRINGs  by  default.  This  switch
              will  produce  LINESTRINGs instead, but shp2pgsql will fail when
              it hits a real MULTILINESTRING. The same works for POLYGONs  vs.
              MULTIPOLYGONs.

       -w     Output WKT format, for use with older (0.x) versions of PostGIS.
              Note that this will introduce coordinate drifts and will drop  M
              values from shapefiles.

       -W <encoding>
              Specify  the  character  encoding of Shapefile's attributes.  If
              this option is used the output will be encoded in UTF-8.

       -I     Create a GiST index on the geometry column.

       -N <policy>
              Specify NULL geometries handling policy (insert,skip,abort).
              Default: insert.

       -?     Display version and usage information.


INSTALLATION
       To compile the program from source, simply run  "make"  in  the  source
       directory.  Then copy the binary in your shell search path (or wherever
       you like). This text is also available as a man page in the ../doc/man/
       directory,  ready for copying it into the manual search path on unixoid
       systems.


EXAMPLES
       An example session using the loader to create an input file and upload-
       ing it might look like this:

       # shp2pgsql shaperoads roadstable roadsdb > roads.sql
       # psql -d roadsdb -f roads.sql

       A conversion and upload can be done all in one step using UNIX pipes:

       # shp2pgsql shaperoads roadstable roadsdb | psql -d roadsdb


AUTHORS
       Originally written by Jeff Lounsbury <jeffloun@refractions.net>.
       Improved and maintained by 
       Sandro Santilli <strk@kbt.io>, Regina Obe <lr@pcorp.us>.
       Includes small contributions and improvements by others.

       This  application  uses  functionality  from  shapelib  1.2.9  by Frank
       Warmerdam <warmerda@gdal.velocet.ca> to read from ESRI Shape files.


SEE ALSO
       pgsql2shp(1)

       More information is available at http://postgis.net



                                                                  shp2pgsql(1)
