1

postgis.sqlファイルを(psqlを使用して)すでに作成されているpgAdminデータベースにロードしようとしているので、空間的に有効なデータベースを作成できます。言語「plpgsql」がすでに存在することを確認しましたが、次の機能を実行できません。

psql -d yourdatabase -f lwpostgis.sql;
psql -d yourdatabase -f lwpostgis_upgrade.sql;
psql -d yourdatabase -f spatial_ref_sys.sql;

一般的な「構文エラーまたはその近く...」が表示されます。

私が読んだことから、これはうまくいくはずなので、多分私は行を正しくフォーマットしていませんか?本当に「psql」が必要ですか?「-d」は何をしますか?コマンドとbupkissの前にpsqlを付けずに試しました。考えは大歓迎です...ありがとう。

4

1 に答える 1

0

-d yourdatabasepsqlが開始されると、オプションはこのデータベースに接続します。
この-f file.sqlオプションは、file.sqlをロードし、それに含まれるすべてのSQLコマンドを実行することを示しています。

すでに内部にいる場合psql、同等のコマンドは次のようになります。

\c yourdatabase:という名前のデータベースに接続しyourdatabaseます。

\i file.sqlfile.sqlその中のすべてのコマンドをロードして実行します。現在のパスにある必要があります。そうでない場合は、フルパスを指定します。

于 2012-11-07T22:47:06.993 に答える