[pgsql-jp: 34147] Re: 全角「1」を含む like 検索で意図しないレコードが返される
Hiroshi Nomiyama
nomizo @ remus.dti.ne.jp
2004年 10月 23日 (土) 15:44:50 JST
野見山です。
岡野さん、レス有難うございます。
Katsuhiko Okano さんは書きました:
>岡野と申します。
>
> ---snip---
>
>initdbコマンドやcreatedbコマンドに「-E EUC_JP」と
>エンコーディング名をEUC_JPに指定していませんか?
>psql -l で該当するデータベースのEncodingを確認してみてはいかがでしょう。
テーブルはEUC_JPでした。
>以下はEUCだった場合の話です。
>
>http://www.rtpro.yamaha.co.jp/RT/docs/misc/kanji-euc.html
>によると、EUCではそれぞれ
>「1」=A3B1
>「藤」=C6A3
>「栄」=B1C9
御丁寧にお調べいただき有難うございます。
>となるようです。したがって、
>「藤栄」=C6A3B1C9
>「*1*」=**A3B1** (*は見やすくするための物なので意味はないです)
>となるので一致してしまうのではないでしょうか?
なるほど、その可能性が高いですね。
>
>対処方法の一つは、データベースのエンコーディングをUNICODEにしてしまう
>方法だと思います。
>(他の問題が表面化してしまうかもしれませんが・・・)
再度initdbしようと思ったところ、ハード障害でマシンが飛んでしまいました・・・
ということで、OSから再インストールしています。
再セットアップ時にはいろいろ試してみたいと思います。
結果は別途報告させていただきますね。
>--
>----------------------------------------
>Katsuhiko Okano
>k_okano (at) po.ntts.co.jp
>NTT Software Corp. (division "NBRO-PT6")
>
----
Hiroshi Nomiyama nomizo @ remus.dti.ne.jp
pgsql-jp メーリングリストの案内