毎日漫然な愚者

少ない時間で挑むGNO2とモンハン日記ばかり?

mysql 日本語&utf-8ではutf8-general-ciにしましょう

2009-06-08 13:20:07 | Weblog
久しぶりの技術メモ

MySQLでutf8を指定するときに、
(たぶん)一般的には以下の2つのうちいずれかを用いると思います。

・utf8-general-ci(デフォルト)
・utf8-unicode-ci

で、今回のメモで残したいことは、
このとき、日本語を使うなら必ず

・utf8-general-ci

を使いましょうってこと。

なんで、こんなメモを残すかというと、
それぞれのキャラクタセットの違いは、

・utf8-general-ci:比較条件の拡張なし
・utf8-unicode-ci:比較条件の拡張あり

のみなんで、MySQLの公式では、
utf8-unicode-ciを使いましょうみたいなことが書いてありますので、
「じゃぁ・・・」、ということで、
ローカルの環境(windows)でutf8-unicode-ciを設定したら、
ひらがなの「ほ」で条件を指定したのに、
「ぼ」や「ボ」や「ホ」といったものに一致するという珍事にはまってしまったためです。

まぁ、通常はデフォルトがutf8-general-ciなので、
特に問題ないと思うけど、もし迷っても間違わないように。
ってことで、未来もへたれな俺は気をつけてねっとwwww