• 締切済み

Encoding変更

RedHat8.0であるため、postgresql-7.2.3.tar.gzをインストール(初期化を含む)していましたが、検証をしているうちに、下記コマンドを実行できないこと COPY tablename FROM '/var/test/testdata.csv' WITH CSV; また、encodingにUTF8を指定できことが分かりました。そこで、postgresql-7.2.3.tar.gzをアンインストールし、postgresql-8.0.26.tar.gzをインストール(初期化を含む)しましたが、Encodingを確認したところ、EUC_JPのままになっていました。アンインストールが上手くできなかったためと考えられますが、どのようにすれば、UTF8に変更できるでしょうか?

みんなの回答

  • yamada59
  • ベストアンサー率74% (29/39)
回答No.1

データベースの文字エンコーディングは作成時にしか指定できないので、文字エンコーディングに UTF8 を指定してデータベースを作りなおす必要があります。 createdb -E UTF8 データベース名 データベースの文字エンコーディングはどうでもよくて単に UTF8 の CSV ファイルからデータをエクスポートしたいだけなら、COPY コマンドの実行前に SET client_encoding TO UTF8 でクライアントの文字エンコーディング UTF8 に変更してうまくいかないでしょうか。

関連するQ&A