Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages
grass-pg(1) GRASS GIS User's Manual grass-pg(1)

PostgreSQL database driver enables GRASS to store vector attributes in PostgreSQL server.

A new database is created with createdb, see the PostgreSQL manual for details.

# example for connecting to a PostgreSQL server:
db.connect driver=pg database=mydb
db.login user=myname password=secret  # port=5432
db.connect -p
db.tables -p

From the PostgresQL manual:

The file .pgpass in a user’s home directory can contain passwords to be used if the connection requires a password (and no password has been specified otherwise). On Microsoft Windows the file is named %APPDATA%\postgresql\pgpass.conf (where %APPDATA% refers to the Application Data subdirectory in the user’s profile). Alternatively, a password file can be specified using the connection parameter passfile or the environment variable PGPASSFILE. This file should contain lines of the following format:


All SQL commands supported by PostgreSQL. It’s not possible to use C-like escapes (with backslash like \n etc) within the SQL syntax.

All SQL operators supported by PostgreSQL.

Import vector module require an unique ID column which can be generated as follows in a PostgreSQL table:

db.execute sql="ALTER TABLE mytable ADD ID integer"
db.execute sql="CREATE SEQUENCE mytable_seq"
db.execute sql="UPDATE mytable SET ID = nextval(’mytable_seq’)"
db.execute sql="DROP SEQUENCE mytable_seq"

CSV import into PostgreSQL:

\h copy
COPY t1 FROM ’filename’ USING DELIMITERS ’,’; creates a new vector (points) map from a database table containing coordinates. See here for examples.

PostGIS: adds geographic object support to PostgreSQL.

In an existing PostGIS database, create the following table:

 id serial NOT NULL,
 mytime timestamp DEFAULT now(),
 text varchar,
 wkb_geometry geometry,
# insert value
INSERT INTO test (text, wkb_geometry)
 VALUES (’Name’,geometryFromText(’POLYGON((600000 200000,650000
 200000,650000 250000,600000 250000,600000 200000))’,-1));
# register geometry column
select AddGeometryColumn (’postgis’, ’test’, ’geometry’, -1, ’GEOMETRY’, 2);

GRASS can import this PostGIS polygon map as follows: input="PG:host=localhost dbname=postgis user=neteler" layer=test \
         output=test type=boundary,centroid test -t test

  • PostGIS with shp2pgsql:
    shp2pgsql -D lakespy2 lakespy2 test > lakespy2.sql
  • e00pg: E00 to PostGIS filter, see also
  • GDAL/OGR ogrinfo and ogr2ogr: GIS vector format converter and library, e.g. ArcInfo or SHAPE to PostGIS.
    ogr2ogr -f "PostgreSQL" shapefile ??

db.connect, db.execute

Database management in GRASS GIS
Help pages for database modules
SQL support in GRASS GIS

  • PostgreSQL web site
  • pgAdmin graphical user interface
  • GDAL/OGR PostgreSQL driver documentation

Main index | Topics index | Keywords index | Graphical index | Full index

© 2003-2021 GRASS Development Team, GRASS GIS 7.8.6 Reference Manual

GRASS 7.8.6

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.