Página 1 de 1

Importación de un Shapefiles (*.shp) a una base de datos postgis

Publicado: Mié Abr 11, 2018 5:02 pm
por Jaibol Santaella
Para importar un archivo shapefiles (*shp) a una base de datos espacial con postgis solo tenemos que transformarlo en un sql y luego importarlo a la base de datos geoespacial.

Importando un shapefile (shp) con shp2pgsql

Sintaxis:

Código: Seleccionar todo

shp2pgsql -s puerto-postgres /ruta-de-tu-shapefiles/nombre-de-tu-shapefiles.shp > nombre-que-tendrá-tu-backup.sql
Ejemplo:

Código: Seleccionar todo

shp2pgsql -s 4326 /home/tu-usuario/Descargas/Vzla-Division/GEO_GEO_CAPITAL_DE_MUNICIPIO.shp > GEO_GEO_CAPITAL_DE_MUNICIPIO.sql
Ahora si deseas practicar puedes descargar los shapefiles de Venezuela haciendo click aquí

Descarga el archivo Vzla-Division.tar.gz.

Descomprime

Código: Seleccionar todo

tar vxzf Vzla-Division.tar.gz
Ingresa al directorio

Código: Seleccionar todo

cd Vzla-Division

Código: Seleccionar todo

shp2pgsql -s 4326  /Vzla-Division/GEO_GEO_CAPITAL_DE_MUNICIPIO.shp public.ocean > GEO_GEO_CAPITAL_DE_MUNICIPIO.sql
De esta manera se ha convertido el GEO_GEO_CAPITAL_DE_MUNICIPIO.shp en un slq de postgres por lo que tendremos que importar a la base de datos.

En otros temas de este foro se ha explicado como crear una base de datos espacial con postgis y también se ha explicado como importar un sql

Así que resumiré los siguientes pasos:

Creamos la Base de datos espacial con el nombre VZLA

Código: Seleccionar todo

CREATE DATABASE VZLA; 
Ingresamos a nuestra base de datos.

Código: Seleccionar todo

 psql VZLA

Instalamos la extensión postgis

Código: Seleccionar todo

 create extension postgis; 
Importamos el Sql de nuestro anterior *.shp el que hace un momento se generó con el nombre de GEO_GEO_CAPITAL_DE_MUNICIPIO.sql

Código: Seleccionar todo

  \i /Vzla-Division/GEO_GEO_CAPITAL_DE_MUNICIPIO.sql