用C#操作mysql时, 插入数据中文都是乱码,只显示问号,数据库本身使用的是utf-8字符。
网上百度一下有两种解决办法:
一种是在执行语句前面设置,如:MySQLCommand mCommand = new MySQLCommand("set names gb2312", m_Connection);
另一种是直接加在连接字符串里,如:<add name="connection" connectionString="server=127.0.0.1;UId=root;PassWord=root;Persist Security Info=True;database=test;Charset=utf8;" providerName="MySql" />
我使用的是第二种,非常简单的解决了问题。