[前][次][番号順一覧][スレッド一覧]

mysql:13351

From: Mamiya Masataka <Mamiya Masataka <xc8m-mmy@xxxxxxxxxx>>
Date: Fri, 15 Sep 2006 12:14:36 +0900
Subject: [mysql 13351] Re: 2バイト文字の文字コード

間宮です。皆さんいろいろな情報をありがとうございます。
スレッドを新しくして、問題点が整理できればうれしいと思います。

ところで、「十」の問題でエラーになるということ
スレッドを改めて読み

> satoです、お騒がせしています。みなさんありがとうございます。
> 念のため、NavicatというmySQLのGUIツールを使って
> 直接、文字を入力してみましたが、結果は同じでした。
> ただ、「十十」「十能」「能十」十十十十」「十十能十能十」はOK
>    「能」「十十十」「能十能」「十能十能十」はNG
> つまり、文字列中に、0x5cが、偶数個はOK、奇数個はNG、となりました。

のところがありました。
じつは私のところでも Navicat を使っています。
ためしに適当なところに「十」とか「三十」を入れてみたのですが
エラーになりませんでした。
と言うことは mySQL のバージョンも関係しているかもしれません。
私のところのバージョンは、mySQL 4.0.18 となっています。
4.0.x で仕様が異なっているのかもしれません。
となると同じ 4.0.x をバージョンアップすることもうかつには出来ない。

いずれにしても複数バイトの文字を扱う場合、
上位バイト(3バイト利用の場合は上位2バイト)に何バイトで1文字とするかの情報があり、
それを正しく読み取れる処理が mySQL 側に備わっているバージョンを使わなければ、

> mySQL で LIKE %香% をすると
> 「香」と「枕(」に合致してしまう

は防げないと言うことになるようです。
バージョンを移行していくのもかなり慎重にしていかないと、
文字コードの問題で大きなトラブルとなる可能性もあるとのこと。
草間さんの情報は大変参考となりました。

文字コードをどのように処理するか、むずかしいですね。


--
Mamiya masataka from IBARAKI JAPAN
0297-58-6313 090-4430-2918
mamiya@xxxxxxxxxx
masataka-orange@xxxxxxxxxx


[前][次][番号順一覧][スレッド一覧]

     13348 2006-09-15 08:24 [Mamiya Masataka <xc8] 2バイト文字の文字コード                
     13349 2006-09-15 11:22 ┣[<kiwah@xxxxxxxxxx>  ]                                       
->   13351 2006-09-15 12:14 ┃┗[Mamiya Masataka <xc8]                                     
     13350 2006-09-15 11:41 ┗[早間 <hayama@xxxxxxx]                                       
     13352 2006-09-15 13:00  ┗[Mitsuhiro KIZU <kizu]