###前提・実現したいこと
PostgreSQL9.6.1にEUC_JPのDBを作成したものをpgadminで接続し、テーブルを直接編集したいです。
pgadminIII、またはpgadmin4にて、
■pgadminIII時
「データベース」→任意のデータベース→スキーマ→「public」→「テーブル」→任意のテーブルを選択→ウインドウ上メニューの「選択オブジェクトデーデータをビュー」ボタンを押下。
■pgadmin4時
DB選択→Schemas→public→Tables→任意のテーブル右クリック「View Data」→「View All Rows」を選択。
どちらのケースでも白紙となり、pgadminIIIでは「アボート」と左下に表示されます。
###発生している問題・エラーメッセージ
PostgreSQLサーバーでは以下のメッセージとなります。
< 2017-01-24 12:54:08.287 JST > ERROR: 符号化方式"EUC_JP"における0xf9 0xf5バイトシーケンスを持つ文字は"UTF8"符号化方式で は等しくありません < 2017-01-24 12:54:08.287 JST > ステートメント: SELECT * FROM public.order ORDER BY order_id ASC
このことから、UTF8でクエリを行っていることがマズイのですが、これをEUC_JPでクエリさせる方法が解りません。
###試したこと
ローカルPCの環境変数に「PGCLIENTENCODING」を作成し、値に「EUC_JP」を設定しましたが、結果は同じでした。
###補足情報(言語/FW/ツール等のバージョンなど)
クライアントOSはWindows10 Pro 64bitです。
PostgreSQLサーバーに対し、postgresql.confに
client_encoding = EUC_JP
を設定して再起動しましたが、結果は同じでした。
どうも、pgadminが強制的にUTF8で見に行っているようです。
コマンドプロンプトで
C:>cd "c:\Program Files (x86)\pgAdmin III\1.12"
c:\Program Files (x86)\pgAdmin III\1.12>psql -U postgres -p hoge -hexample.com testdb
psql (9.0.0, server 9.6.1)
WARNING: psql version 9.0, server version 9.6.
Some psql features might not work.
Type "help" for help.
testdb=# \encoding
EUC_JP
testdb=# SELECT * FROM public.order
testdb-# ORDER BY order_id
testdb-# ASC;
order_id ..snip...
と正常に出力されます。
また、100件までのクエリでは正常に結果が返る事から、テーブル内でEUCコードとUTF8と相容れない文字があるのだと推測しますが、解決法が解りません。
どなたか、解決法は解りますでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/24 05:24