Bagaimana cara mengontrol penyandian di pgsql2shp?


8

Saya memiliki database dan mengekspor dengan berbagai shapefile pgsql2shp. Tetapi ketika saya membuka dbf karakter yang ditampilkan salah. Contoh: BroeksterwÔld dan ini harus Broeksterwäld.

Ini mungkin ada hubungannya dengan pengkodean. Basis datanya adalah UTF-8. Saya mencoba mengekspor shapefile sebagai LATIN1, tetapi saya tidak tahu bagaimana cara melakukannya.


MEMPERBARUI

Saya memecahkan masalah ini dengan menambahkan 'set pgclientencoding = latin1' (tanpa tanda kutip) ke skrip batch.


Jawaban Stefan sudah benar. Di lingkungan Unix / bash, itu harus export PGCLIENTENCODING=LATIN1. Huruf besar wajib, setidaknya di lingkungan saya (Mac OS X 10.10.1 dan PostgreSQL 9.3).
thomaskonrad

Ini seharusnya merupakan komentar terhadap jawaban yang lain, bukan jawaban yang baru.
BradHards

Jawaban:


4

Saya memecahkan masalah ini dengan menambahkan 'set pgclientencoding = latin1' (tanpa tanda kutip) ke skrip batch.


3

Ada opsi -W untuk pgsql2shp yang memungkinkan Anda menentukan pengkodean. Anda juga bisa melihat ke pengaturan variabel lingkungan PGCLIENTENCODING. Sebagian besar set data baik dari CBS Belanda atau Dutch Kadaster datang dalam pengkodean CP1252, bukan Latin1.


1
Terima kasih! Saya percaya opsi -W hanya bekerja dari shp 2 postgres dan sayangnya tidak dari postgres 2 shp. Saya mencoba mengatur variabel lingkungan PGCLIENTENCODING, tetapi saya tidak yakin apakah saya melakukannya dengan benar. Apa yang saya perlu atur, apakah dengan variabel sistem dan kemudian di bawah variabel 'PGCLIENTENCODING' (tanpa tanda kutip) dan di bawah nilai 'Latin1' atau 'CP1252' (tanpa tanda kutip). Dan bagaimana cara menulis perintah pgsql2shp? Seperti ini: pgsql2shp.exe -f folder -h .. -p .. -u ... -P .. -g geometrie .., atau apakah saya perlu menambahkan sesuatu. Terima kasih atas bantuan Anda!
Stefan

0

S / w mana yang Anda gunakan untuk melihat shapefile? Jika Anda menggunakan QGIS, itu akan memungkinkan Anda untuk memilih pengkodean dari shapefile, dan Anda dapat menyimpannya dengan pengkodean yang baru. Lihat juga di sini


Terima kasih atas jawabannya. Tetapi saya ingin memasukkan pengkodean ke dalam skrip yang saya miliki. Karena ada 60 ekspor shapefile setiap bulan. Saya tidak ingin mengubah penyandian secara manual setiap bulan untuk setiap file. Apakah Anda tahu cara memasukkannya ke dalam skrip.
Stefan
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.