Name

PostGIS/PostgreSQL Database

Synopsis

PostGIS is Refraction Research's spatial extension to the PostgreSQL enterprise database.

PostGIS support

PostGIS is supported directly by MapServer and must be compiled into MapServer to work.

In most cases, PostgreSQL and PostGIS libraries (.dll or .so) must be present in the system's path environment for functionality to be present. This includes the libpq and libpostgis libraries.

Map file example

  • Specify CONNECTIONTYPE POSTGIS.

  • Define CONNECTION as:

        "host=
                               yourhostname
                             dbname=
                               yourdatabasename
                             user=
                               yourdbusername
                            
        password=
                               yourdbpassword
                             port=
                               yourpgport
                            "
  • CONNECTION parameters can be in any order. Most are optional. dbname is required. host defaults to localhost, port defaults to 5432--the standard port for PostgreSQL.

  • Define DATA as: "geometrycolumn from yourtablename". MapServer had a bug related to the keyword from. Specify it in lowercase to avoid problems. geometrycolumn can be the_geom if the shp2pgsql utility is used to load data, or wkb_geometry if ogr2ogr is used.

For example:

      LAYER
        NAME pg_test
        TYPE POLYGON
        CONNECTIONTYPE POSTGIS
        CONNECTION "host=mapserver.com dbname=gmap user=julio"
        DATA "wkb_geometry FROM province"
        CLASS
           ...
        END
      END

For more info about PostGIS and MapServer, see PostGIS docs at http://postgis.refractions.net/docs/.

Get Web Mapping Illustrated now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.