実際には、\copy
を実行することはできません pg_query()
経由 。 SQLコマンドではありません 。これは、 psqlのメタコマンドです。 クライアント。
そこで実行できます:
\copy data1 FROM 'data1.txt' WITH CSV HEADER DELIMITER AS ',' QUOTE AS '^'
または、shell-commandを実行します:
psql mydb -c "\copy data1 FROM 'data1.txt'
WITH CSV HEADER DELIMITER AS ',' QUOTE AS '^'"
引用符に注意してください。 PostgreSQLでは値を一重引用符で囲む必要があります:'value'
。
二重引用符は識別子用です。実際に必要なのは、大文字または不正な文字を含む識別子、または予約語の場合のみです:"My table"
。