• ベストアンサー

MyODBC-3.51のドライバでの文字化け

MySQL5&php5&Apache2.2(OS:XP) で、MyODBC-3.51のドライバを使い、ACCCESS2003からテーブルのリンクを貼っています。 phpMyAdminでは、綺麗に日本語で表示されるのですが、 テーブルのリンクを貼ったACCCESS2003からは「韦겜臣肨ꫨ」のような 幽霊文字で表示されます。 MyODBCのConection Optionで「Charactor Set」で sjisでもutf8でも同じです。 どなたかお分かりの方、教えてください。

  • idek
  • お礼率47% (170/361)
  • MySQL
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • nora1962
  • ベストアンサー率60% (431/717)
回答No.2

http://dev.mysql.com/downloads/connector/odbc/5.1.html ここからMYODBC 5.1をダウンロードして設定してみてください。 当方ではMYSQL 5.0の環境ですが、このドライバでDB側の文字コードが UTF-8ですがACCESS2003で正常に日本語が表示されています。

idek
質問者

お礼

ありがとうございました。結局出来ませんでしたが、勉強しなおします。

idek
質問者

補足

お返事をいただきありがとうございます。 MYODBC 5.1に変えました。 PCの再起動、ODBCの削除&再登録をしても同じ現象です。 すいません。心当たり、まだおありであれば教えてください。

その他の回答 (1)

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

「Initial Statement」に「set names cp932」を指定しても変わりませんか。

idek
質問者

補足

早速回等ありがとうございます。 >「Initial Statement」に「set names cp932」を指定しても変わりませんか。 変わりません。

関連するQ&A

  • phpMyadminでのMySQLの文字セット

    windows2000 pro Apache2.0.55 phpmyadmin 2.8.03 mySQL 5.0.20 上記環境にてphpmyadminでmySQL上にテーブルを作成しようとしているのですが日本語のテーブル名を作成するとエラー(文字化け)になってしまいます。 基本的に現状すべてSJISに設定しているのですが (漏れがあるかもしれませんが)phpmyadminの画面上に表示されるmySQLの文字セットが "UTF-8 Unicode (utf8)"になっているのが原因かと推測しているのですが思いつく箇所をすべてSJISにしているつもりなのですが一向に変わりません。 ・php.ini ------------------------------------ mbstring.internal_encoding = SJIS mbstring.http_output = SJIS ------------------------------------ ・my.ini ------------------------------------ [mysql] default-character-set=sjis [mysqld] default-character-set=sjis ------------------------------------ ・config.inc.php ------------------------------------ $cfg['DefaultLang'] = 'ja-sjis'; $cfg['DefaultConnectionCollation'] = 'sjis_japanese_ci'; $cfg['DefaultCharset'] = 'ja-sjis'; ------------------------------------ 各関連しそうな箇所は上記のように設定しているのですがお気づきな点及び解決方法がありましたらお教え下さい。 同環境にて管理しやすくするためテーブル名、フィールド名を日本語にしたいのが目的です。

    • ベストアンサー
    • MySQL
  • 文字化け回避できません

    MYSQL入門以前という本を購入し、MYSQLとPHPの勉強をしています。例題である住所録をPHPを使って作成しました。フォームから氏名等登録すると、登録された内容がブラウザへ表示される形になっています。ブラウザには文字化けも無く日本語がきちんと表示されているのですが、ターミナル、PHPMyadminでテーブルの内容を見てみると文字化けしています。 apache 1.3.3 MYSQL 4.0.26 PHP 4.4.1 Mac OS X 10.4.8 my.cnfの内容 [mysqld] default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis php.iniのdefault_charset部分 default_charset="Shift_JIS" ターミナル→ウィンドウ設定→ディスプレイ部分 文字セットエンコーディングUTF-8 PHPMyAdmin 言語 UTF-8 文字化けを回避するにはどれをどうすればいいのか素人なので全然わかりません。教えてください。

    • 締切済み
    • PHP
  • 文字化けについて

    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
  • XAMPPでMySQLで文字化け、文字コード設定について

    MySQLの文字セット: UTF-8 Unicode (utf8)が変更できない。(できればSJISにしたい) 環境: OS:WinXP XAMPP1.6.6 * Apache 2.2.8 + OpenSSL 0.9.8g * MySQL 5.0.51 * PHP 5.2.5 & PHP 4.4.8 (RC2) * phpMyAdmin 2.11.4 症状: コマンドラインから作った全角文字を含む簡易テーブルについて。 ブラウザからphpMyAdminで確認すると文字化けせず読めるが、 DOSからコマンド"select"で確認すると文字化けしてしまう。 DOS窓からコマンド入力で簡単なテーブルsampleを作る。 東京,tokio Kanagawa,kanagawa とうきょう,tokio mysql> select * from sample; +------------+----------+ | ken | kencho | +------------+----------+ | | tokio | | Kanagawa | kanagawa | | ニ、ォ、 | tokio | +------------+----------+ mysql> status Server characterset: sjis Db characterset: sjis Client characterset: sjis Conn. characterset: sjis mysql> show variables like '%char%'; +--------------------------+-----------------------------------+ | Variable_name | Value | +--------------------------+-----------------------------------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | sjis | | character_set_filesystem | binary | | character_set_results | sjis | | character_set_server | sjis | | character_set_system | utf8 | | character_sets_dir | _xampp_mysql_share_charsets_ | +--------------------------+-----------------------------------+ character_set_systemだけがutf8なのは何故でしょうか? 編集したファイル: <my.ini(C:\WINDOWS)> [mysqld] default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis <my.cnf(C:\xampp\phpMyAdmin)>(短縮ダイヤル) default-character-set=sjis init-connect=SET NAMES sjis <config.inc.php(C:\xampp\phpMyAdmin)> $cfg['DefaultLang'] = 'ja-sjis'; $cfg['Lang'] = 'ja-sjis'; $cfg['DefaultCharset'] = 'ja-sjis'; 結果: とりあえず調べた事をファイルに反映させてみましたが、 DOSプロンプトからselect文を実行すると全角文字が読めません。 どうすれば読めるようになりますか? character_set_system utf8を変更するのでしょうか? "http://www.oji.ath.cx/sb/log/eid11.html"を参考にさせて頂きましたが、character_sets_*の意味がいまいち分かりません。 こちらも分かれば教えて頂きたいと思います。 宜しくお願いします。

    • ベストアンサー
    • MySQL
  • PHPで「~」文字が化けてしまう

    VertrigoServ にて、WindowsXPへ  Apache 2.0.63  PHP 5.2.6  MySQL 5.0.51b  SQLite 3.5.9  PhpMyAdmin 2.11.7  SQLiteManager 1.2.0  Zend Optimizer 3.3.3  をインストールしました。  その後、PhpMyAdmin で既に用意されていた test データベースに  tbl という名のテーブルを用意し、二つのフィールドを作成しました。  データベース | 照合順序 ------------------------------------------  test | sjis_japanese_ci  フィールド | 種別 | 照合順序  ----------------------------------------  name | text | sjis_bin  name2 | text | sjis_japanese_ci  この name 、name2 フィールドに「~」という文字を挿入してみたら、  データの表示で「?」と表示されてしまいました。  「あ」と挿入しても「あ」と表示されます。  どうしたら「~」と表示されるようになるのでしょうか?  因みに、PhpMyAdminのログイン後のトップページでは、  MySQL の文字セット: UTF-8 Unicode (utf8)  MySQL の接続照合順序:utf8_unicode_ci  と表示されています。  これが問題なのでしょうか?

    • ベストアンサー
    • PHP
  • 文字化けに関して

    環境 PHP:PHP5.3.8 MySQL:mysql-5.5.17-win32 phpmyadmin:phpMyAdmin-3.4.7-all-languages 文字化けに関して教えて下さい。 過去に何度も設定した経験がありますが、また同じ事ではまってしまいました。 現在、phpのプラグラム(プログラムの設定は charset=SHIFT-JISで設定)でMySQLへ入力処理を行っていますが、 どうしても文字化けしてしまいます。 MySQLの環境としては、 mysql> show variables like "char%"; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | utf8 | | character_set_results | sjis | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | C:/Program Files/MySQL/MySQL Srever 5.5/share/charsets/ | +--------------------------+----------------------------+ となっており、上記character_set_database がutf8である事が原因とあった為、 何とか変更しようとしましたが、変更できません。 phpmyadmin の設定も間違っているのでしょうか? そもそもどのような設定を行えば良いのか、正しい値を教えて頂ければ幸いです。 初歩的な質問で申し訳ありませんが、教えて下さい。

    • ベストアンサー
    • PHP
  • MySQL4.1.11の漢字がAccessで文字化け

    今までMySQL-3.23.49 + MyODBC-3.51.02 の組み合わせで問題なく動作していましたが、 MySQLを4.1.11、MyODBCを3.51.11.2 にバージョンアップしたところ、MySQLで入力した漢字がAccess上で文字化けしてしまいました。 ちなみに MySQLの変数 character_set_system が utf8 になっている以外、character_set_client 、character_set_connection 、character_set_database 、character_set_result 、character_set_server は全てsjisになっています。 試しに utf8 のテーブルを作成したところ、文字化けは起こりません。 今回、MySQLに、シフトJISの全角/半角、カナ/かな、大文字/小文字 を同一視比較する改造を加え、MySQL内部では成功しました。 Accessでも利用したいと考えていますので、解決策を教えて下さい。 成功事例? character_set_system の変更方法? MyODBCで utf8-sjis 自動変換する方法? 以上 よろしくお願い致します。

    • ベストアンサー
    • MySQL
  • MySQLの文字化けに関して

    MySQLとPHP、phpMyadminで開発をした際に、phpMyAdminから 登録した値が、PHPで表示させると文字化けしてしまいます。 手当たり次第環境を調べてみましたが、どうしても原因が掴め ません。 わかる方がいらしたら是非教えて下さい。 《環境》 PHP   php-5.0.2 MySQL  mysql-4.0.21 phpMyAdmin phpMyAdmin 2.7.0 です。 MySQLは、  [mysqld]   default-character-set=sjis  [mysql]   default-character-set=sjis  [mysql-dump]   default-character-set=sjis で設定してあり、 phpMyadminは、  $cfg['DefaultLang'] = 'ja-sjis'  $cfg['DefaultCharset'] = 'SHIFT_JIS' と設定してあります。 もちろんPHPも'SJIS'ですが、、、 本当に困っています。 教えてください。

    • ベストアンサー
    • MySQL
  • phpMyAdminでの文字化け

    こんにちは。 PHPとMySQLを使用するために Apache HTTP Server 2.2.6 MySQL Server 6.0 phpMyAdmin 2.11.2.2 をインストールしました。 しかし、phpMyAdminにログインすると、おそらく日本語になっているであろう部分が全て文字化けしてしまいます。 エンコードでその都度日本語を選択すればよいかと思い、とりあえずデータベースにテーブルを作成しようと思いエンコードしたところ何も表示されなくなってしまいました。 恐らく私がしている質問は初歩的な設定が原因だと思いますが、どなたかわかる方がいらっしゃいましたら解答いただけると助かります。

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

    phpmyadmin 文字化けを開きテーブルを見ると日本語が化けてしまいます。 php のプログラムからは読み書き、表記は正しくできます。 いろいろ調べ以下をやったのですがだめでした。 「MySQLの設定」 # vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql old_passwords=1 default-character-set = utf8 character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 #skip-character-set-client-handshake ※最終的にコメントアウト [mysql] default-character-set = utf8 [mysqldump] default-character-set = utf8 MySQLをリスタートする。 # /etc/rc.d/init.d/mysqld restart 「phpMyadminの設定」 # vi /var/www/phpmyadmin/config.inc.php $cfg['DefaultLang'] = 'utf-8'; $cfg['DefaultConnectionCollation'] = 'utf8_general_ci'; $cfg['FilterLanguages'] = ''; $cfg['DefaultCharset'] = 'utf-8'; $cfg['AllowAnywhereRecoding'] = TRUE; apache再起動 何か足りない点はありますでしょうか? 環境は以下です。 phpMyAdmin •バージョン情報: 3.5.1 (最新版) •サーバ: Localhost via UNIX socket •ソフトウェア: MySQL •ソフトウェアバージョン: 5.1.61 - Source distribution •プロトコルバージョン: 10 •ユーザ: root@localhost •サーバの文字セット: UTF-8 Unicode (utf8)

    • ベストアンサー
    • MySQL