- PR -

MySQLで日本語が文字化け

1
投稿者投稿内容
Desmo
大ベテラン
会議室デビュー日: 2004/03/24
投稿数: 149
投稿日時: 2005-08-04 18:27
MySQLで日本語入力したデータがあるのですが、あるツールで表示すると文字化けしてしまいます。
例)
あいう → あいう
といった具合。
保存時に使用されたキャラクターセットを知りたいのですが、どうやって調べたらよいでしょう?

【詳 細】
MySQLのバージョンは、4.0.24 です。
インストールは、自分で何か任意の設定をして行なったものではありません。
ある(オープンソースの)業務ソフトのインストールを行った際に、自動的にMySQLがインストールされ、同時にDATABASEやテーブルやデータまで作成され、その業務ソフトは使えるようになりました。
業務ソフト自体は英語版なのですが、データとして日本語を使うことは可能で、入力したものはあとでちゃんと表示されます。
ところが、このデータをツール(EbEditというもの)で直接覗きにおくと文字化けしています。
ツールで日本語を書き込むと そのツールでは表示できるのですが、今度は業務ソフト上で文字化けします。
このツールはキャラクターセットの指定ができるのですが、SJIS、EUC_JP、UTF-8 など指定を変えても改善しません。
業務ソフトが何のキャラクターセットを使用しているか調べたいのですが、どうしたら良いでしょう?
その業務ソフトは、
・Apache 2.0.54
・PHP 5.0.3
で動作しています。
せん
ぬし
会議室デビュー日: 2002/03/04
投稿数: 397
投稿日時: 2005-08-05 01:11
引用:

業務ソフトが何のキャラクターセットを使用しているか調べたいのですが、どうしたら良いでしょう?


その業務ソフトの名前をここに書く。

知っている人がいればコメントされるかもしれません。
coasm
大ベテラン
会議室デビュー日: 2001/11/26
投稿数: 237
投稿日時: 2005-08-05 02:11
12354 = 0x3042 = Unicodeでの'あ'の文字コード
です。

EbEditでそう見えるのだとすると、その「業務ソフト」の内部処理として、
非ASCII文字をそういう形にエンコードしてDBに格納するようになっているのかもしれません。

Desmo
大ベテラン
会議室デビュー日: 2004/03/24
投稿数: 149
投稿日時: 2005-08-06 09:09
業務ソフトは、Sugar Open Source 3.0c というものです。
http://www.sugarcrm.com/

> EbEditでそう見えるのだとすると、その「業務ソフト」の内部処理として、
> 非ASCII文字をそういう形にエンコードしてDBに格納するようになっているのかもしれません。

確かに。
文字化けだとばかり思っていたのですが、その文字列がそのままテキストとして格納されているだけかも知れません。(そんな気がしてきました)
それでは いくらキャラクターセットを変更しても改善するわけがありませんね。
もう少し調べてから また結果を書き込みます。
貴重なご意見 本当にありがとうございました。

PS. EbEdit → DbEdit の間違いでした。(coasm様には通じてたものと思いますが)
  Eclipseのデータベースアクセス用プラグインです。
Desmo
大ベテラン
会議室デビュー日: 2004/03/24
投稿数: 149
投稿日時: 2005-08-08 17:57
"あいう"は、
あいう
と表示され そのコードは、
38 35 49 50 51 53 52 59 38 35 49 50 51 53 54 59 38 35 49 50 51 53 56 59
となっており・・・ つまりはそういう形でDBに格納されていたことがわかりました。
私は文字化けと決めてかかっていたので、coasmさんの指摘がなかったらきっといつまでも気が付かなかったと思います。ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)