【MySQLに関する質問】


OD:CentOS4.2
言語:php-4.3.9-3.9、
DB:mysql-4.1.12-3.RHEL4.1
ツール:phpMyAdmin 2.7.0-rc1
-----
今回、とあるシステムをUTF-8で制作することになりました。

DB作成時に
SJISの時は、createをsjis_japanese_ciで、
select時に「SET NAMES sjis;」を送信。
EUCの時は、createをujis_japanese_ciで
select時に「SET NAMES ujis;」を送信。

さて、UTF-8の時は、
createをutf8_japanese_ciで
select時に「SET NAMES utf-8;」
あたりかなと思ったのですが、
utf8_japanese_ciが見あたりません。

該当しそうなモノで
utf8_unicode_ci
utf8_general_ci
がありましたが、この2つがどんなものかもよく分かっていません。
また、SET NAMES ???も何を送信すればいいのか解りません。

この辺りに詳しい方、ご教授願います。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/01/22 18:53:42
  • 終了:--

回答(1件)

id:ttamo No.1

たも回答回数175ベストアンサー獲得回数292006/01/22 21:10:51

ポイント40pt

http://dev.mysql.com/doc/refman/4.1/en/charset-unicode-sets.html

MySQL 3.23, 4.0, 4.1 Reference Manual :: 10.10.1 Unicode Character Sets

ここを見ると、「utf8_general_ci は、

違う文字でも等価として扱うといった UTF-8 の expansion をサポートしていない

ので、utf8_unicode_ci より速いけれどもちょっとだけ便利さが減る」

といった感じですね。


japanese はないので、

機種依存っぽい文字とか記号はできるだけ避けたほうが良さそうです。

SET NAMES utf8

で良さそうです。

id:keijiro

なるほど。

機種依存文字なども放り込もうと思ったら、

bin8-binなどになるんですかねー

2006/01/22 23:21:58

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません