• 締切済み
  • 困ってます

文字化け

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を使ってレコードを挿入する時に問題があると考えているのですが、 どのようにしたら解決するのでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数293
  • ありがとう数1

みんなの回答

  • 回答No.1

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

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • MySQLからACCESSにリンクすると文字化けします

    MySQL初心者です。困っています。教えてください。 PC環境は OS:WindowsXP,ACCESS2000,MySQL5.10ver,ODBC3.51です。 ACCESS側からMySQLにリンクテーブルを張ると、全角が表示されません。 すべて“#Name?”と表示されてしまいます。 またインポートテーブルを作成すると半角は表示されますが、 やはり全角は“?”ですべて表示されます。 コマンドプロンプト上でテーブルに格納されているレコードを表示する場合は、 ちゃんと全角で内容が表示がされています。 MySQL上の「My.iniSetup」には以下の設定をしています。 [WinMySQLAdmin] Server=C:/mysql/bin/mysqld-max-nt.exe [mysqld] basedir=C:/MYSQL default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis [WinMySQLadmin] Server=C:/MYSQL/bin/mysqld-nt.exe 他の方の文字化けする場合などの質問では、 大体がiniファイルの設定が影響するようでしたが、 やはりわたしもこの設定がおかしいのでしょうか? 皆様のお知恵をお貸し下さい。 よろしくお願い致します。

  • phpMyAdminでエクスポートすると、~やcmなどが文字化けします。

    phpMyAdminでMySQLのテーブルを CSVファイル形式でエクスポートして テキストエディタ(UnEditor)で開いたところ、 「shift-jis変換できない文字を含んでいます。  ?に変換します」 となりました。 ?に変換された文字は、~やcm(全角1文字でcm)などです。 どのようにしたら、文字化けしないで エクスポートできるようになるのでしょうか? 各テーブル、フィールドの照合順序はすべて utf8_general_ci に変更しましたが、 状況はかわりませんでした。 (変更前は、ujis_japanese_ciでした) レンタルサーバの為か、 my.cnfファイルは見つかりません。 ご存知の方がいましたら、教えていただけると、 助かります。m(_ _)m レンタルサーバー:さくら PHP 5.2.x PHP の文字セット:EUC-JP MySQL 5.1 MySQL の文字セット: UTF-8 Unicode (utf8) phpMyAdmin 3.1.3.1 windows XP

    • ベストアンサー
    • MySQL
  • PHP フォームからのデータが文字化け

    PHPにて簡単な以下のようなアプリを勉強がてら作っています。 1.登録フォームを表示 2.確認画面表示 3.DB(MySQL)にデータ登録 そこで質問なのですが、フォームから入力し確認画面を表示するときに、フォームから入力した文字が文字化けしてしまいます(正確には文字化けする時としない時があります)。 出力ページはSmartyを使っています。 テンプレートはUTF-8を使っており、テンプレート内の文字は文字化けしません。PHPソースもUTF-8で書いてあります。 各PHPソースには mb_language("uni"); mb_internal_encoding("UTF-8"); mb_http_output("UTF-8"); と記述しています。 DB(MySQL)のテーブルはUTF-8にしてあります。 1点気になるのは、某ホスティングサービス上で作っているのですが、PHPinfoで見てみるとmb_internal_encodingはEUC-JPになっています。 今回UTF-8で作りたいのですがどうしたら良いのでしょうか? 環境は、 Apache 1.3.34 / PHP 4.3.7 / MySQL 4.1.21 です。 アドバイスお願いいたします。

    • ベストアンサー
    • PHP
  • コマンドプロンプト プログラム実行時の文字化け

    コマンドプロンプト上で、UTF-8のexeファイルを実行してみたのですが、文字化けしてしまいます。 コマンドプロンプトの設定で、フォントを「MSゴシック」には変更しました。 後、「chcp 65001」も実行しています。 typeコマンドでUTF-8のテキストファイルの中身を見た場合は文字化けが起こりません。 以下、環境を書いておきます。 OS: Windows 7 Home Premium 32bit コンパイラ: MinGW gcc 4.6.2 文字コードをUTF-8にしたままでOKな改善策があれば、ご教授お願いします。

  • コマンドプロンプトでの文字化け

    ●質問の主旨 コマンドプロンプトでMySQLを呼び出し、 SELECT * FROM db1.tb1; とデータベースとテーブルの全内容を呼び出すと、 文字化けがします。 普通に日本語を表示させるためには、どうしたら良いでしょうか? ご存知の方、よろしくお願いします。 ●質問の補足 先日から、他の質問でも、文字化けが発生しています。 対応するために、「あれこれ」いじっているうちに、 MySQLでも文字化けが起こりました。 「あれこれ」いじった内容は、記憶が定かではありません。。 ●関連質問 eclipseの文字化けについて(PHPファイル) http://okwave.jp/qa/q8068188.html なぜ何も表示されないのか? http://okwave.jp/qa/q8065031.html ●開発環境 windows8 xammp1.8.1 (phpmyadmin)

    • ベストアンサー
    • MySQL
  • 文字化け。

    SQLPLUSを使用し、データをインサートしました。 そしてそのレコードを検索すると、全角スペース等がある場合、それ以降の文字が文字化けしてしまいます。 なお、ファイルからSQLスクリプトを実行しインサートした場合は正常でした。 どのデータベースに接続しても同じ結果で、別のマシンだと正常にできます。 私のPCに原因があるのだと思いますが、どこを確認したらよいかわかりません。 この件について理解されている方、よろしくお願い致します。

  • Line Inputで文字化け(助けて下さい)

    素人な質問ですみません。 Line Input #fpFileNo, strMsgBuffA 上記手法により、txtファイルから1行ずつレコードを 取り出していますが、 先頭が”全角文字”のレコードを取り出すと 先頭文字が”文字化け”します。 正しく全角文字が取り出せる手法を教えてください。

  • テキストファイルからのデータ入力の文字化け

    windows Vista 64bitで mySQL ver14.14 for 32bit win を最近導入しました。 非常に初歩的なステップなのですが、テキストファイルからテーブルにデータを入れると文字化けが起こってしまい、困っています。 mysql> create database user_db ; mysql> use user_db; mysql> create table mytable( -> name text, -> sex text, -> addr text -> ); テキストファイル(input_data.txt)はutf-8、unix format(これは改行コードのことだと思います)で abcd female amsterdam efgh male detroit ijkl male tokyo というふうに作成し、 mysql> load data infile 'C:/input_data.txt' -> into table mytable; mysql> SELECT name,sex,addr FROM mytable; とすると +-------+------+-----+ |name___|sex___|addr_| +-------+------+-----+ |???abcd|female|amsterdam |efgh___|male__|detroit |ijkl___|male__|tokyo と一行目のデータのはじめの値の???部分がアルファベット以外の妙な文字3文字に置き換わります。 2行目3行目は問題ないようです。 文字コードの設定はconfig wizardでutf-8としており、 mysql>status で server characterset:utf-8 Db characterset:utf-8 Client characterset:utf-8 Conn. characterset:utf-8 と表示されます。 また、いろいろ試したところテキストエディタで入力ファイルをwindowsフォーマットで保存すると1行目に加え、2行目も文字化けするようです。 改行コードに関係することなのかもしれませんが、原因・解決方法がわかりません。 どなたか解決方法がわかりましたらアドバイスよろしくお願いします。

    • ベストアンサー
    • MySQL
  • コマンドプロンプトでUTF-8が文字化けします

    Windows8.1proを使用してます。 コマンドプロンプトで chcp 65001でUTF-8にしてます。 日本語を入力したテキストファイルを UTF-8 で保存し、typeコマンドで表示すると文字化けします。 コマンドプロンプトのフォントはラスターフォントを選択してます。 レジストリを修正してMSゴシックをフォントに追加しようとしましたが、追加出来ませんでした。 何かアドバイスがありましたらご教示お願い致します。 宜しくお願い致します。

  • 文字化けについて

    phpMyAdmin - 2.11.4 php エディタ shift-jis MySQL クライアントのバージョン: 5.0.45 localhost MySQL の文字セット: UTF-8 Unicode (utf8) MySQL の接続照合順序 sjis_japanese_ci テーブル 操作 レコード数 種別 照合順序 サイズ オーバーヘッド t01ken 47 MyISAM sjis_japanese_ci 2.9 KiB - 1 テーブル 合計 47 MyISAM sjis_japanese_ci 2.9 KiB 0 バイト 上記の環境にて phpでつくってみたら、 ヘッダー部など、htmlにうめこんでいる文字は通常どうりでたのですが、 php mysqlからかえってくる値で日本語の部分が????になります。 お分かりの方いらっしゃいますか? 勉強しながらしています。 どうか助けてください。

    • ベストアンサー
    • MySQL