我正在尝试将以下字符串从 C# 应用程序添加到 MySQL 数据库中的 varchar 列中。
"TVCM | AU「FULL CONTROL/XMAS」篇 60秒"
结果是这样的
"TVCM | au?FULL CONTROL/Xmas???60?"
我在my中设置了default-character-set=utf8.ini并将数据库,表和列的默认字符集设置为utf8。
插入字符串的代码如下所示
(其中标题具有值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。
知道我的问题是什么吗?
您也可以在连接字符串中指定字符集 - 检查您的连接字符串是否明确指定了"charset=utf8"
问题必须出在开发环境的字符集中,Visual Studio 的默认文件编码取决于 Windows 设置。以下是您可以更改它的位置。
控制面板 |区域和语言选项 |高级 |英格利斯从下拉列表中更改语言。