- 締切済み
Copy To で出力されない
以下のコマンドを実行しています。 Copy t_balance TO 'c:/temp/backup/t_balance.csv' CSV HEADER; localHostは正常にコピーされるのですが、サーバ上のデータベースをCopyすると以下のエラーが発生し、出力されません。 ERROR: could not open file "c:/temp/backup/t_balance.csv" for writing: No such file or directory 原因がつかめません。どなたか教えていただけませんか? 環境はPostgreSQL 8.2 クライアントOS:Xp(sp4) サーバOS:2000Server
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- root139
- ベストアンサー率60% (488/809)
これは psql などでログインした状態でSQLコマンドのCOPYを実行した場合ですよね? COPYコマンドで指定されたファイルはサーバが直接アクセスするので、サーバから見たパスになります。ご質問のケースではサーバ上の c:/temp/backup/t_balance.csv に書き込もうとして失敗しているのかと。 ↓の「COPYコマンドで指定するファイルは、・・・」の部分を参照して下さい。 http://www.postgresql.jp/document/8.2/html/sql-copy.html ローカルのファイルに書き込みたい場合には、 psql のコマンドの \copy を使えば良いです。 http://www.postgresql.jp/document/8.2/html/app-psql.html ただし、telnet や ssh 端末でサーバにログインしてそこの psql を使っている場合は、もちろんサーバ上のファイルに出力されますが。
お礼
ありがとうございます。 HELPを確認し、絶対パス(ネットワークPC経由)にすることで、対応でき、理解しました。 ありがとうございました。