shp2pgsqlを使用してインポートする方法


11

シェイプファイルをPostGISにインポートしたい。データベースは1つですpostgresが、まだテーブルは追加されていません。

私はこのコマンドを使用しています:

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

そしてそれは私にいくつかのエラーを与えています:

データ値をUTF-8に変換できません(iconvは「無効または不完全なマルチバイトまたはワイド文字」を報告します)。現在のエンコーディングは「UTF-8」です。「LATIN1」(西ヨーロッパ)、またはpostgresql.org/docs/current/static/multibyte.htmlで説明されている値のいずれかを試してください

私のコマンドは間違っていますか?

回答:


29

-W "latin1"フラグを試しましたか?デフォルトのエンコーディング(UTF-8)がうまく機能しない場合があります。多分あなたはlatin1エンコーディングでより幸運になるでしょう:

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

ここには便利なチートシートがあります

それが役に立てば幸い..


1
うーん.. postgresデータベースにPostGIS拡張機能を正しくインストールしましたか?あなたがいない場合:多分、この缶の助けを...

通常、問題がなければmake install、次のプロセスに進むことができます(make checkはその前のステップmake installです)。psql/ pgadmin3を介してデータベースに接続できれば、インストールは成功です。「空間データベースの作成」ステップに進むことができますか?私は、拡張メソッドを使用することをお勧めします。..

おい、これはあなたの元の質問から遠く離れすぎています、ハハ..たくさんの変数があるとき、ここであなたを助けるのは少し難しいです:どのバージョンのPostgreSQLを使っていますか?; どのようなシステムで?; どのバージョンのPostGISをインストールしようとしていますか?"CREATE EXTENSION"構文を認識できなかったようです。入力するだけでデータベースに正常にpsql -d geocoding -U postgresアクセスできますgeocodingか?

私の悪い。その後、2.5に従う必要がありますPostgreSQLで9.1セクションよりも低い空間対応データベースを作成します。それでも問題が発生する場合は、新しい質問を開いて、より良い答えを得ることができるようにすることをお勧めします;)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.