¿Cómo controlar las codificaciones en pgsql2shp?

8

Tengo una base de datos y exporto con pgsql2shp varios shapefiles. Pero cuando abro el dbf los caracteres se muestran incorrectamente. Ejemplo: BroeksterwÔld y este debería ser Broeksterwäld.

Esto probablemente tiene que ver con la codificación. La base de datos es UTF-8. Intenté exportar los archivos de forma como LATIN1, pero no puedo entender cómo hacerlo.


ACTUALIZAR

Resolví este problema agregando 'set pgclientencoding = latin1' (sin comillas) al script por lotes.

Stefan
fuente
La respuesta de Stefan es correcta. En un entorno Unix / bash, debe serlo export PGCLIENTENCODING=LATIN1. Mayúsculas es obligatorio, al menos en mi entorno (Mac OS X 10.10.1 y PostgreSQL 9.3).
thomaskonrad
Esto debería haber sido un comentario en contra de la otra respuesta, no una nueva respuesta.
BradHards

Respuestas:

4

Resolví este problema agregando 'set pgclientencoding = latin1' (sin comillas) al script por lotes.

Stefan
fuente
3

Existe la opción -W para pgsql2shp que le permite especificar la codificación. También podría considerar establecer la variable de entorno PGCLIENTENCODING. La mayoría de los conjuntos de datos del CBS holandés o del Kadaster holandés vienen en la codificación CP1252, no en Latin1.

Edward Mac Gillavry
fuente
1
¡Gracias! Creo que la opción -W solo funciona desde shp 2 postgres y desafortunadamente no desde postgres 2 shp. Traté de establecer la variable de entorno PGCLIENTENCODING, pero no estoy seguro de si lo hago correctamente. ¿Qué necesito establecer? Eso sería por variables del sistema y luego bajo la variable 'PGCLIENTENCODING' (sin comillas) y bajo el valor 'Latin1' o 'CP1252' (sin comillas). ¿Y cómo escribo el comando pgsql2shp entonces? De esta manera: pgsql2shp.exe -f carpeta -h .. -p .. -u ... -P .. -g geometrie .., o necesito agregar algo. ¡Gracias por tu ayuda!
Stefan
0

¿Qué s / w estás usando para ver el archivo de forma? Si usa QGIS, le permitirá seleccionar la codificación del archivo de forma, y ​​luego podrá guardarlo con la nueva codificación. Mira también aquí

mapoholic
fuente
Gracias por la respuesta. Pero me gustaría poner la codificación en un script que tengo. Porque hay 60 exportaciones de archivos shape cada mes. No quiero cambiar manualmente la codificación cada mes para cada archivo. ¿Quizás conoces una forma de ponerlo en un script?
Stefan