[pgsql-jp: 25226] Re: Windows上JDBC でのエンコーディング

Eiji Tokuya e-tokuya @ sankyo-unyu.jp
2002年 3月 11日 (月) 19:23:42 JST


徳家です。

> 谷田です。
>
> On Mon, 11 Mar 2002 16:19:20 +0900
> "Eiji Tokuya" <e-tokuya @ sankyo-unyu.jp> wrote:
>
> > > ・ところで、PostgreSQLとの通信はSJISが使えるが、Win32のJDKではMS932が
デ
> > > フォルトである。
> > PostgreSQLのClientEncoding のSJISは実はMS932と全く等価な
> > 文字集合であるので問題なく利用可能である。(^^;)
> > JavaをSJISではなくMS932で使えば何ら問題ありません。
>
> え・・・じゃあ、実は今のPostgreSQL(以下P)<->Java(以下J)のエンコーディン
> グの対応、(P)SJIS->SJIS(J)は間違いということですか?
>
> #この返答を見る限り、(P)SJIS->MS932(J)が正しいように思いますが。

ピンポーン!!(^^;)

# 私がPostgreSQLのソースに手を出す以前に、既にこのような仕様になっていまし
た。

EUC_JPのコード体系を崩さずに、SJISでIBM拡張漢字(IME漢字一覧の「漢字3」の文
字)に対応させたい。
ということからこのような規格を採用することになったようです。
doc/README.mb.jaを参照してください。ここにその経緯が記されています。
JISX0213への対応を先送りにした仕様ではありますが、利用者の声でこのようになっ
ているようです。(^^;)

UNICODEをDBのエンコーディングに使った場合もCP932との変換でSJIS(MS932)に変換
しています。

よって、
> #この返答を見る限り、(P)SJIS->MS932(J)が正しいように思いますが。
実際、これが一番正しい・・・・・。d(^^;)

MS932をShift-JISと思って更にMS932に変換したら化ける文字があっても当然という
ことになりますね。

だからdoc/README.mb.jaをよく見るようにすすめるのですよ。
# 「マニュアルはきちんと読みましょう。」
# ただそれだけで片付けられる問題でもありますね。(^^;)

徳家




pgsql-jp メーリングリストの案内