3

シェルなしでpgsql2shpを使用してSQLをshpファイルに変換することは可能ですか?いくつかのSQL(postgis、postgresql)構文を介して?

4

1 に答える 1

1

シェルを呼び出さないと不可能です。ただし、2つのカルジが利用可能です。

1)postgresql内に安全でない言語(pythonなど)で関数を作成し、pgsql2shpを実行することができます。これは醜いハックですが、SQLクエリによってシェープファイルを生成するという利点があります。

2)SQLの結果を一時テーブルにダンプし、ジオメトリ列をST_AsTextを介してテキストとして保存できます。次に、sql COPY TOコマンドを使用してテーブルをcsvにダンプし、後でクライアント側のスクリプトを使用してcsvからシェープファイルを再構築できます。

これらのアプローチはどちらも完全に満足できるものではありませんが(特にアプローチ2は、ジオメトリの精度の一部を失う可能性があります)、目標を達成するには十分な場合があります。

于 2010-05-10T02:36:55.893 に答える