実際には、\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" 。