读书人

.net连接mysql数据库 中文变乱码

发布时间: 2013-03-27 11:22:42 作者: rapoo

.net连接mysql数据库 中文变乱码 在线等
使用vb.net连接mysql数据库,插入的数据在mysql表里是乱码,用vb.net读取出来也是乱码,按网上写的修改字符集的文章修改了下,还是没成功。。

数据库中字符如下:
mysql> show variables like 'character_set_%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set

vb.net中代码如下:
Dim mSQLcomm As MySqlCommand = New MySqlCommand("set names gb2312", mySQLconn)

中文乱码解决不掉
[解决办法]
在.net连接 mysql 的连接串中 加上CharSet=utf8 试试,
这个需要在在连接串中指定
[解决办法]

引用:
引用:在.net连接 mysql 的连接串中 加上CharSet=utf8 试试,
这个需要在在连接串中指定
我将
MySqlConnection="server=192.168.10.10;user id=root;password=123456;database=;charset=utf8"
数据库连接没有问题,乱码的问题还……

string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" +
"SERVER=localhost;" +
"DATABASE=rebook;" +
"UID=root;" +
"PASSWORD=qwe123;" +
"OPTION=3;CharSet=gbk;";


连接串改成这样看看,这是我以前使用的,不会出现乱码
[解决办法]
这是因为数据库里面的中文不是utf8,mysql早期的工具有这个问题,你去mysql官网下一个最新MySQL,我记得是5.6版,这个问题就解决了

读书人网 >C#

热点推荐