¿Cómo importar usando shp2pgsql?

11

Quiero importar shapefile en PostGIS. Hay una base postgresde datos , pero todavía no se ha agregado ninguna tabla.

Estoy usando este comando:

shp2pgsql -I -s 4326 districts.shp districts | psql -d postgres -U postgres 

y me está dando algún error:

No se puede convertir el valor de datos a UTF-8 (iconv informa "Multibyte o carácter ancho no válido o incompleto"). La codificación actual es "UTF-8". Pruebe "LATIN1" (Europa occidental) o uno de los valores descritos en postgresql.org/docs/current/static/multibyte.html

¿Mi comando está equivocado?

sandeep
fuente

Respuestas:

29

¿Has probado la -W "latin1"bandera? A veces, la codificación predeterminada (UTF-8) no funciona bien. Quizás tengas mejor suerte con la codificación latin1:

shp2pgsql -I -s 4326 -W "latin1" districts.shp districts | psql -d postgres -U postgres

Hay una útil hoja de trucos disponible aquí .

Espero eso ayude..


fuente
1
Hmm .. ¿Has instalado correctamente la extensión PostGIS en la postgresbase de datos? Si no lo ha hecho: tal vez esto puede ayudar ..
Por lo general, si make installfunciona, puede pasar al siguiente proceso ( make checkes un paso anterior make install). Si puede conectarse a su base de datos a través de psql / pgadmin3, eso significa que su instalación es un éxito. ¿Puedes pasar al paso "Crear una base de datos espacial"? Recomiendo usar el método EXTENSIONS ..
Amigo, esto se ha alejado demasiado de tu pregunta original, jaja ... Es un poco difícil ayudarte aquí cuando hay muchas variables en juego: ¿qué versión de PostgreSQL estás usando ?; en qué tipo de sistema ?; ¿y qué versión de PostGIS estás intentando instalar? Parece que no reconoció la "CREATE EXTENSION"sintaxis. ¿Escribir solo psql -d geocoding -U postgreste lleva a la geocodingbase de datos con éxito?
Culpa mía. Entonces deberías seguir el 2.5. Crear una base de datos espacial en PostgreSQL inferior a 9,1 sección .. Si todavía a tener problemas me gustaría sugerir que se abre una nueva pregunta - para que pueda obtener mejores respuestas;)