« 大友克洋 x カップヌードル | メイン | 佐藤卓さんのトークショー »

2006年05月01日

ColdFusion MX7 + MySQL 4.1.xの文字化け

ColdFusionでMySQLをDataSourceにした場合に、文字化けが発生し、格闘。その結果をメモ。

原因として判明したのが、MySQL4.1から実装された文字コード変換機能のようである。文字コードがクライアント、DBなどの各所インタフェースで自動変換されてしまうようだ。それを避けるために、明示的に文字コードを設定する必要がある。

以下のようにすると、文字化けは解消できた。

ColdFusion: DataSource: Connection String

useUnicode=true&characterEncoding=EUC_JP
参考サイト: ColdFusion MX 7 入門?: WinXP IIS(7)

MySQLの文字コード設定:

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | ujis                       |
| character_set_connection | ujis                       |
| character_set_database   | utf8                       |
| character_set_results    | ujis                       |
| character_set_server     | ujis                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

といっても、とりあえず、これで動いている状態なので、すべての文字コードをUTF8に統一するなど、別な策を講じる必要性はあるように思える。

投稿者 araken : 2006年05月01日 17:55

トラックバック

このエントリーのトラックバックURL:
http://www.kalium.net/cgi-bin/mt/mt-tb.cgi/1239