« PHPで特定の文字より前にある文字列を得る | メイン | IE7のお気に入りのバグ? 過去に同じ名前で登録したサイトが開く »

2008年4月 8日

MySQLでサポートしないVistaの文字に関するメモ

背景
・VistaのサポートするJIS X 0213:2004はUTF-8表現で4バイトとなる文字がある
・MySQLは4バイト文字をサポートしない

問題
・MySQLがこれらの文字に対応できない
・MySQLでは4バイトの文字以降は削除されて格納する仕様となっている

詳細
入らない漢字一覧
その他一部の中国語漢字

解決
・アプリケーションレイヤーで弾く
・文字列型ではなくバイナリ型として列を定義する(デメリットあり)
・将来に期待する

詳細
MySQLの現行UTF-8の問題とその対処方法について