create table person(
id char(20) not null,
name char(50) not null,
primary key(id)
)DEFAULT CHARSET=gbk;
建好了表,C#编程查询读取的中文已经没有问题了
在是C#代码中插入数据还是会乱码,
insert into person values('1234','张三');
如果在MySQL Command Line Client下输入是上面的语句,查询出来的是中文
使用的是 MySql.Data.dll
求有经验的帮忙一下,比较急
id char(20) not null,
name char(50) not null,
primary key(id)
)DEFAULT CHARSET=gbk;
建好了表,C#编程查询读取的中文已经没有问题了
在是C#代码中插入数据还是会乱码,
insert into person values('1234','张三');
如果在MySQL Command Line Client下输入是上面的语句,查询出来的是中文
使用的是 MySql.Data.dll
求有经验的帮忙一下,比较急
Database changed
mysql> select * from person;
+------+--------+
| id | name |
+------+--------+
| 1234 | 张三丰 |
+------+--------+
1 row in set (0.00 sec)mysql> delete from person where id='1234';
Query OK, 1 row affected (0.05 sec)mysql> select * from person;
Empty set (0.00 sec)mysql> select * from person;
+------+------+
| id | name |
+------+------+
| 1234 | ?? |
+------+------+
1 row in set (0.00 sec)mysql>
static void Main(string[] args)
{
MySqlConnection m_conn = null;
string url = "Database=smsp;Data Source=192.168.10.167;User Id=root;Password=ccqgf";
m_conn = new MySqlConnection(url);
m_conn.Open(); string sql = "set names gbk;";
MySqlCommand command = new MySqlCommand(sql, m_conn);
command.ExecuteNonQuery(); sql = "insert into person values('1234','张三');";
command = new MySqlCommand(sql, m_conn);
command.ExecuteNonQuery(); m_conn.Close();
}
Person表里面原有一条数据,删除后,再运行此段代码, 查询到的还是乱码
求各位帮下忙,难道是我引用的dll有问题,
有空的可以帮忙写代码测试一下,如果有测试成功的,分享一下经验
而使用command line插入中文数据,command line和代码查询结果中文能够正常现在的问题是,要怎么样才能够使用代码插入数据中文能够正常呢,需要进行什么处理?
{
MySqlConnection m_conn = null;
string url = "Database=smsp;Data Source=192.168.10.167;User Id=root;Password=ccqgf;charset=gbk;";//在这里增加 charset=gbk,而不是在sql前面增加 set names gbk;
m_conn = new MySqlConnection(url);
m_conn.Open(); string sql = "insert into person values('1234','张三');";
MySqlCommand command = new MySqlCommand(sql, m_conn);
command.ExecuteNonQuery(); m_conn.Close();
}