Outdated version of the documentation. Find the latest one here.

17.3. Lesson: Importar y Exportar

Evidentemente, una base de datos sin una manera simple de migrar datos dentro y fuera de esta no seria de mucha utilidad. Afortunadamente, hay ciertas herramientas que te permitirán importar o exportar datos de PostGIS fácilmente .

17.3.1. shp2pgsql

shp2pgsql is a commandline tool to import ESRI shapefiles to the database. Under Unix, you can use the following command for importing a new PostGIS table:

shp2pgsql -s <SRID> -c -D -I <path to shapefile> <schema>.<table> | \
  psql -d <databasename> -h <hostname> -U <username>

Under Windows, you have to perform the import process in two steps:

shp2pgsql -s <SRID> -c -D -I <path to shapefile> <schema>.<table> > import.sql
psql psql -d <databasename> -h <hostname> -U <username> -f import.sql

You may encounter this error:

ERROR:  operator class "gist_geometry_ops" does not exist for access method
"gist"

Este es un problema conocido con respecto a la creación in situ de un índice espacial para los datos que se van a importar. Para evitar el error, hay que excluir el parámetro -I. Esto quiere decir que ningún índice espacial está siendo creado directamente, y necesitará crearse en la base de datos después que los datos hayan sido importados. (La creación de un índice espacial se verá en la próxima lección.)

17.3.2. pgsql2shp

pgsql2shp is a commandline tool to export PostGIS Tables, Views or SQL select queries. To do this under Unix:

pgsql2shp -f <path to new shapefile> -g <geometry column name> \
  -h <hostname> -U <username> <databasename> <table | view>

To export the data using a query:

pgsql2shp -f <path to new shapefile> -g <geometry column name> \
  -h <hostname> -U <username> "<query>"

17.3.3. ogr2ogr

ogr2ogr is a very powerful tool to convert data into and from postgis to many data formats. ogr2ogr is part of the GDAL/OGR Software and has to be installed separately. To export a table from PostGIS to GML, you can use this command:

ogr2ogr -f GML export.gml PG:'dbname=<databasename> user=<username>
        host=<hostname>' <Name of PostGIS-Table>

17.3.4. Administrador de BBDD

You may have noticed another option in the Database menu labeled DB Manager. This is a tool that provides a unified interface for interacting with spatial databases including PostGIS. It also allows you to import and export from databases to other formats. Since the next module is largely devoted to using this tool, we will only briefly mention it here.

17.3.5. In Conclusion

Importar y exportar datos hacia una base de datos o desde una base de datos puede ser llevado a cabo de distintas formas. Especialmente cuando se usa diversas fuentes de datos, probablemente se usen estas funciones ( o parecidas) en una base regular.

17.3.6. What’s Next?

A continuación se detalla como hacer una consulta en los datos que hemos creado previamente.