none
VB.NET 2010によるMYSQL接続(文字化けを起こします) RRS feed

  • 質問

  • http://kie.nu/3Vq

    Visual Studio 2010からWindows XP Pro SP3にインストールしたMYSQL 5.5にODBC接続しています。
    ODBCの文字コードはCP932です。下記はmysql側の文字コードになります。

    +--------------------------+--------------------------+
    | Variable_name | Value |
    +--------------------------+--------------------------+
    | character_set_client | cp932 |
    | character_set_connection | cp932 |
    | character_set_database | cp932 |
    | character_set_filesystem | binary |
    | character_set_results | cp932 |
    | character_set_server | cp932 |
    | character_set_system | utf8 |

    VSでデータソースの追加を行います。画像①のようにテーブル名、フィールド名は文字化けをおこしていません。

    データソースが追加された後に、追加されたデータソースを見ると日本語のテーブル名が文字化けをおこしています。

    文字化けをおこさないようにするには、どのようにしたらよいでしょうか?

    2012年1月20日 15:00

回答

すべての返信

  • MySQLは詳しくないですが、my.iniを以下のように設定するとうまく行くかもしれません。

    [mysql]
    default-character-set=cp932

    [mysqld]
    character-set-server=cp932
    skip-character-set-client-handshake

    (参考)
    XAMPP on WindowsでMySQLの文字化け対策
    http://hobby.txt-nifty.com/t1000/2011/06/xampp-on-window.html

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答の候補に設定 山本春海 2012年1月26日 9:06
    • 回答の候補の設定解除 山本春海 2012年2月2日 8:04
    • 回答の候補に設定 山本春海 2012年2月2日 8:08
    • 回答としてマーク 山本春海 2012年2月2日 8:14
    2012年1月21日 7:44
    モデレータ
  • ODBC とのことなので、My ODBC を使用されていたら、[mysql] ではなく [odbc] のセクションが参照されているようですね。

    それは置いといて、この default-character-set の設定はテーブル名やカラム名等のSQL文に使用する文字コードではなく、文字列型の列の中身のやりとりに使用する文字コードの設定のようです。テーブル名等の SQL 文そのものの文字コードは ODBC の設定で行うようです。

    http://billyboy.blog81.fc2.com/blog-entry-69.html

    http://www.google.co.jp/search?hl=ja&q=mysql+odbc+initial+statement+set+names&lr=lang_ja

    こちらも参考になるかな?

    http://goungoun.dip.jp/app/fswiki/wiki.cgi/debianetch?page=2007%2F04%2F23-01%A1%A2skip-character-set-client-handshake+%A4%CB%A4%C4%A4%A4%A4%C6

    SET NAMES に拘らず character_set_connection collation_connection を適切に設定する必要があるということでしょうか。

    ※ MySQL は真面目につかっていないので、間違っていたらすいません。

    2012年1月28日 10:57
  • こんにちは、ringo_roadagain さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。
    その後いかがでしょうか。みなさんからの投稿は確認されましたか?

    参考になる情報をいただいているかと思われましたので、勝手ながら私の方で一旦回答としてマークさせていただきました。
    情報くださったみなさん、ありがとうございます。

    いただいた情報の中で解決に役立った投稿や、参考になる情報など有効な情報には回答としてマークすることをお願いしています。
    今後、同じ問題でこのスレッドを参照される方にも、有効な情報を活用いただけるかと思いますので、ご協力よろしくお願いいたします。

    ringo_roadagain さん、一旦回答としてマークさせていただきましたが、その後の状況や結果を情報更新していただけるとうれしいです。
    よろしくお願いいたします。
                                                       
    日本マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2012年2月2日 8:14