実現したいこと
postgresで作成済みのテーブルにcsvファイルのデータをコピーしたいのですが、エラーが発生してしまいます。
同じエラーの出ている他質問を見たところ、スペースの有無が原因のようですが、どこを直したらよいか分かりません。
前提
ヘッダーが(no,city,population)のcsvファイルを
下記のテーブルにコピーしようとしています。
テーブル名:test
カラム: no,city,population
各カラムにデータは入っていません。
発生している問題・エラーメッセージ
character with byte sequence 0xe7 0xac 0xa6 in encoding "UTF8" has no equivalent in encoding "WIN1252"
該当のソースコード
\copy public.test (no,city,population) from C:\\csv\\test.csv" WITH (encoding 'UTF-8', header true, format csv, DELIMITER ',');
試したこと
ファイルパスは\が2つでないと、ファイルパスのエラーが出てしまいました
文字コードの問題な気がします。この記事にある「postgresqlにログインしてset client_encoding TO 'UTF8';を実行するという解決方法」は試しましたか?
https://teratail.com/questions/305608
コメントありがとうございます。
試してみましたが、同じエラーメッセージが文字化けして表示されました。
操作対象のDBの文字コードと、CSVファイルの文字コードを教えてください。
psql -l で表示されるDB一覧の Encoding の部分がそのDBの文字コードです。
CSVファイルの文字コードは、メモ帳でそのファイルを開いたときに右下に表示されます。
