/ 中存储网

c#处理MySQL时遇到中文乱码问题的解决办法

2014-09-24 12:09:03 来源:中存储网

以下的文章主要介绍的是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(); 
最终效果如: