プロが教える店舗&オフィスのセキュリティ対策術

Windows7にxampp1.7.3をいれています。MySQLはSever version 5.1.41です。
my.iniは[mysqld][mysqldump][mysql]に
default-character-set = utf8
を追加しました。

UTF-8でテーブルの作成(create文)とレコードの追加(insert文)を書いたテキストファイルを作り、
windowsのコマンドプロンプトから
mysql -u root -p (パスワード)
で入り、
source (上のテキストファイル);
で読み込ませ実行し、phpでそのデータベースに接続して使おうとしました。

しかし、特定の文字だけ化ける現象が表れます。
上のsource (上のテキストファイル);を実行したときも、
1 row affected (0.00 sec)という中にいくつか(たぶん文字化けのところに)
1 warning (0.00 sec)が表れました。

化けた文字は「店」「局」「展」「 (全角スペース)」「く」などです。
それ以外の文字はPHPを使って見たときは正常に表示されます。
(もちろんコマンドプロンプトでselect文でテーブル表示したときなど
全部文字化けしますが)

自分では
店(E5BA97)、局(E5B180)、展(E5B195)、全角スペース(E38080)、く(E3818F)、から
UTF-8で「E5B」「E38」から始まる文字が化けるように思っています。

そもそもsourceを使ってレコードを挿入する時に問題があると考えているのですが、
どのようにしたら解決するのでしょうか?

A 回答 (1件)

実行するSQLファイル内で明示的に「SET NAMAES CP932;」を実行してみてはどうなりますか?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!