- 締切済み
C# で発生したException.MessageをMysqlに登録した際に文字化けが発生する
C# で発生したException.MessageをMysqlに登録した際に文字化けが発生する. すいませんが、皆様のお力をお貸しください。 以下のようなコードでC#で発生した例外の情報をMySQLに登録しようとしていますが、「??????????????」の様に文字化けして日本語が登録できません。 ---- C#のコード public void errorLog(Exception exception){ MySqlConnection mySqlConnection = new MySqlConnection(); mySqlConnection.ConnectionString = "Database=airreserve;Data Source=localhost;User Id=root;Password=root"; mySqlConnection.Open(); MySqlCommand mySqlCommand = mySqlConnection.CreateCommand(); StringBuilder sql = new StringBuilder(); sql.Append(" INSERT INTO system_error_log ("); sql.Append(" error_message, "); sql.Append(" error_detail, "); sql.Append(" update_time "); sql.Append(" ) VALUES ( "); sql.Append(" @message, "); sql.Append(" @error, "); sql.Append(" now() "); sql.Append(" ) "); mySqlCommand.CommandText = sql.ToString(); mySqlCommand.Parameters.AddWithValue("@message", exception.Message); mySqlCommand.Parameters.AddWithValue("@error", exception.StackTrace); mySqlCommand.ExecuteNonQuery(); } ---- MySQLの設定 -------------- mysql Ver 14.12 Distrib 5.0.85, for Win32 (ia32) Connection id: 3 Current database: airreserve Current user: root@localhost SSL: Not in use Using delimiter: ; Server version: 5.0.85-community-nt MySQL Community Edition (GPL) Protocol version: 10 Connection: localhost via TCP/IP Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 TCP port: 3306 Uptime: 8 hours 8 min 34 sec Threads: 5 Questions: 581 Slow queries: 0 Opens: 54 Flush tables: 1 Open tables: 1 Queries per second avg: 0.020 --------------
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mdp36
- ベストアンサー率72% (26/36)
接続文字列にcharset=utf8を入れてみては?
補足
さっそくの回答ありがとうございます。 "Database=airreserve;Data Source=localhost;User Id=root;Password=root;charset=utf8"; でやってみましたが、やはりだめでした。 私も些細なことが原因だと思うのですが、もう少しお付き合いください。