[pgsql-jp: 39305] Re: 'encoding "EUC_JP" has no equivalent in "UTF8"' の理由
Hiroki Kataoka
kataoka @ interwiz.jp
2008年 3月 26日 (水) 12:35:53 JST
片岡です。
樋口佳之 さんは書きました:
> 1 両方の変換表に手を加えてうまくいった場合
>
> euc_jp_to_utf8.map: {0xfce2, 0xe9ab99}, /*はしごたか*/
> utf8_to_euc_jp.map: {0xe9ab99, 0xfce2} /*はしごたか*/
既存のPostgreSQLのEUC_JPの変換表(つまりeucJP-msの変換表)に、上記のよ
にCP51932向けの変換ルールを部分的に加えていくと、結果的にだんだんめちゃ
くちゃな変換表になっていきます(双方に互換性がないので)。
ですから、どうせやるならCP51932(ポスグレ的にはwin51932かな?)という
エンコーディングを新設して変換表を作って、そちらを使ったらいいのではない
でしょうか? あるいは、日本語EUCといえばCP51932しか使わない!というので
あれば、PostgreSQLのEUC_JPをCP51932とみなしてしまって、変換表をすっかり
CP51932向けに書き換えてしまったらどうですか?
ちなみにCP51932にはIBM拡張文字や外字が扱えませんので、そういう意味では
今まで使えてた文字の一部は使えなくなります。その辺の覚悟も必要です。
--
Hiroki Kataoka <kataoka @ interwiz.jp>
pgsql-jp メーリングリストの案内