- 締切済み
日本語のデータが表示されません
Xampp1.7付属のMySQL5.1.30を使用しています。 SELECT文で日本語データを抽出しても表示されません。 他の数値の列は表示されますが、日本語文字列の部分だけ空白が表示されます。 列の定義はVARCHAR(10)となっており、INSERTで挿入すると、Query OK と出ますが、Warning 1 とも出ます。 my.cnfにはcharacter-set-server = ujis と書いて、status コマンドでも ujisになっているのが確認できました。 コマンドプロンプトの文字コードをchcpで日本語EUC(20932)に変更しても駄目でした。 何が原因か分かりません。どなたかご存じないでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- orange4096
- ベストアンサー率100% (1/1)
たまたま立ち寄りました. 参考になれば幸いです。 MySQL 5.0 と MySQL 5.1 では、日本語(を含む文字コード)の設定が 全く違うため、MySQL 5.0 の情報源を信じて、MySQL 5.1 を使うと 混乱するということがあります。 ※ MySQL 5.1 では、テーブル名として日本語を使うことが簡単にできるようになりました。 <助言> ・今から新しくデータベースを作る(ことが許される)なら、cp932 を候補として提案します http://www.db.is.kyushu-u.ac.jp/rinkou/mysql/kanji.html ・今のデータベースを温存したいのでしたら、「skip-character-set-client-handshake の設定(クライアント文字コードセット自動変換機能の解除)」を行った結果、どのソフトで、どういう文字が出てきたか(要するに空白のままなのか)、この板で見せる。 「show variables like 'character_set%';」や「show variables like 'collation%';」の結果を見せるなどしますと、議論が進むかも知れません。 http://www.db.is.kyushu-u.ac.jp/rinkou/mysql/code.html ・今後の用途として、他のソフトとの連携(Java や Web など) を考えておられるなら、それを開示してくださいますと、議論を絞ることができるかも知れません。
- oraaoz
- ベストアンサー率100% (1/1)
コメントありがとうございます。 私の環境では少しうまくいきました! しかし、なぜかわからないですけど2箇所の my.cnf を使っているようです。両方の My.cnf がちゃんとしてないとうまく表示されません。 また、クエリはまだ認識されていないようです。。。 asasho321さんのほうでなにか情報が追加されましたらお教えいただけるとありがたいです。
- oraaoz
- ベストアンサー率100% (1/1)
こんばんは。 私も PHPを使って 日本語データを表示したところ ??となってしまいました。 キャラクタセットの統一をしてもうまくいっておりません。 問題が似ているので、明日対応してみようと思うことを回答させてください。もし、私より先にお試ししていただければ、その結果もお教えいただければありがたいです。 WEBで調べたところ、もしかしたら My.cnf に・・・skip-character-set-client-handshake を設定すればうまくいくのかな? と思いました。 ピントが合っていない回答でしたらごめんなさい。 my.cnf ファイル [mysqld] default-character-set = sjis skip-character-set-client-handshake [mysql] default-character-set =sjis
お礼
実は、skip-character-set-client-handshake の設定は私も試していました。 残念ながら私の環境では効果がありませんでした。使い方が悪かったのかもしれません。 ですが、oraaozさんの環境では成功するかもしれないでの、構わず試してみてください。 アドバイスありがとうございました。