我正在尝试将以下字符串从C#应用程序添加到MySQL数据库中的varchar列。
"TVCM | AU「FULL CONTROL/XMAS」篇 60秒"
它最终会像这样
"TVCM | au?FULL CONTROL/Xmas???60?"
我在my.ini中设置了default-character-set = utf8,并为数据库,表格和列设置了DEFAULT CHARSET为utf8。
插入字符串的代码如下所示
(其中title的值为TVCM | AU「FULL CONTROL/XMAS」篇 60秒
string sqlQuery = "insert into myTable (Title) values (?Title)";
MySqlCommand command = m_connection.CreateCommand();
m_connection.Open();
command.CommandText = sqlQuery;
command.CommandType = CommandType.Text;
command.Parameters.Add(new MySqlParameter("?Title", title));
command.ExecuteNonQuery();
m_connection.Close();
另外,我正在使用MySQL Connector.NET 6.6.4。
知道我的问题是什么吗?
答案 0 :(得分:4)
我相信您也可以在连接字符串中指定字符集 - 检查您的连接字符串是否明确指定"charset=utf8"
答案 1 :(得分:0)
问题必须在开发环境的charset中,Visual Studio的默认文件编码取决于Windows设置。以下是您可以更改的位置。
控制面板|区域和语言选择|高级|英语可以从下拉列表中更改语言。