Web系開発メモ

Java, C#, HTML, CSS, JavaScript のことなどを書いてます。

C# MySQLの操作で文字化けする場合の対処方法

C# から MySQL への操作で、文字化けが発生することがありました。これから、その詳細と対応方法を記載していきます。

目次

  1. 確認した事象
  2. 対応方法
  3. MySQL文字コードを確認する方法

1. 確認した事象

日本語文字列を INSERT したり、UPDATE の値に指定すると、文字化けが発生しました。

また、WHERE句の条件値が日本語文字列だと、正しくSELECTできないことがありました。

2. 対応方法

接続文字列に Charset=utf8;を追加すると、文字化けしなくなりました。

const string connect =
  "Server=localhost;Port=3306;Uid=root;" +
  "Pwd=rootpass;Database=mytest;Charset=utf8;";

DBと同じ文字コードを設定する必要があります。

DBに設定している文字コードが分からない場合は、以下の方法で確認することができます。

3. MySQL文字コードを確認する方法

以下の記事を参考にさせて頂きました。

MySQLの日本語文字化け回避!文字コードを確認&変更する方法 | サービス | プロエンジニア