以下的文章主要介绍的是C#开发MySQL中文乱码的正确处理方案的介绍,其中包括对其开发环境,相关的问题描述,以及在C#开发MySQL中文乱码处理中需要插入测试数据代码的描述,以下就是文章的主要内容描述。
开发环境:
vs 2008+easyphp5.3.0+win7
问题描述:在MySQL中插入的中文显示为问号,读出也显示为问号
C#访问数据库用的组件是MySQL.Data.dll(5.0.8.1)
测试用建表代码如下(注意建库的时候把整理改成utf8_general_ci):
CREATE TABLE TT (
id smallint(6) NOT NULL DEFAULT '1',
name varchar(64) NOT NULL,
descr varchar(64) DEFAULT NULL,
PRIMARY KEY (id)
)
C#开发MySQL中文乱码处理中需要插入测试数据代码:
insert into config TT('4','呵呵','哈哈')
C#程序代码:查询部分代码
MySQLConnection con = new MySQLConnection("server=127.0.0.1;uid=root;pwd=;database=test;Charset=utf8");
con.Open();
DataSet ds = new DataSet();
MySQLDataAdapter adp = new MySQLDataAdapter("select * from TT",con);
adp.Fill(ds);
con.Close();
dataGridView1.DataSource = ds.Tables[0];
插入部分代码:
插入部分代码
MySQLConnection con = new MySQLConnection("server=127.0.0.1;uid=root;pwd=;database=test;Charset=utf8");
con.Open();
string sql = "insert into config TT('4','呵呵','哈哈')";
MySQLCommand cmd = new MySQLCommand(sql,con);
cmd.ExecuteNonQuery();
con.Close();
最终效果如:
2014-09-24 12:09:03