質問: テーブルに日本語が登録できない xampp1.6.6をインストールし、mysqlを使ってデータベースの勉強をしているのですが、 コマンドプロントからtableにデータを登録すると日本語のみ綺麗に弾かれます。 例えば insert into test(sample1,sample2,sample3) values('test1','テスト','test3'); とすると「1 warnings」と表示され、テストのとこのみ空欄になります。 php、mysql共に文字コードをutf8にしたのですが、これが原因でしょうか? 解決方法よろしくお願いします。
回答: まず、ano.2さんのおっしゃられるとおりwindowsのコマ ンドプロンプトは「sjis」しか対応していません。 1.mysqlにログイン 2.データベース選択 3.「show variables like 'char%';」コマンドを入力 ※ここで「character_set_filesystem」以外「utf8」 出ない場合、設定不足が考えられます。 ・character_set_databaseがlatin1などのばあい・・・ =>utf8環境でデータベースを作成していますか? 4.「set names cp932;」を入力 5.「insert into~」を実行 ※上記環境はmysql5.0.45上で確認しました。 ※但し、mysql5.x系とwindowsのコマンドプロンプトはあ まり整合性が取れていないらしく、phpやphpmyadmin等 で確認すると正常に格納されているデータでも、コマン ドプロンプト上では表示がおかしくなるケースがあり ます。 私の場合、5.0.51環境では日本語が「半角記号、カナ」 等に文字化け、5.0.45では、ファイルからアップロード した場合、日本語部分を表示させたりすると他部分の表 示が欠損する場合がありました。 xampp1.6.6ですと、mysqlは5.0.51だと思いますが、ご 参考までに。 参考url:http://oshiete1.goo.ne.jp/qa3786052.html