Importante

La traducción es un esfuerzo comunitario puede unirse. Esta página está actualmente traducida en |progreso de traducción|.

16.3. Lección: Importación y exportación

Of course, a database with no easy way to migrate data into it and out of it would not be of much use. Fortunately, there are a number of tools that will let you easily move data into and out of PostgreSQL.

16.3.1. shp2pgsql

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

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

Bajo Windows, tienes que realizar el proceso de importación en dos pasos:

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

Puede encontrar este error:

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

Se trata de un problema conocido relacionado con la creación in situ de un índice espacial para los datos que está importando. Para evitar el error, excluya el parámetro -I. Esto significará que no se creará ningún índice espacial directamente, y tendrás que crearlo en la base de datos después de haber importado los datos. (La creación de un índice espacial se tratará en la próxima lección).

16.3.2. pgsql2shp

pgsql2shp is a commandline tool to export PostgreSQL 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>

Para exportar los datos usando una consulta:

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

16.3.3. ogr2ogr

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

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

16.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 PostgreSQL. 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.

16.3.5. En conclusión

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.

16.3.6. ¿Y ahora qué?

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