ASP.net连接mysql数据库中文乱码问题的解决方法

时间:2022-04-03 06:52:50


1. 修改mysql的配置。

到mysql server的安装目录下找到my.ini,修改[mysql]小节中的default-character-set为utf8

[mysql]default-character-set=utf8 

 

2. 修改mysql server的字符集

如果有mysql客户端查询工具,可以直接连接。否则通过命令行进入mysql安装目录的bin目录下并依次分别输入以下各行内容并分别回车。

第一个是用来登陆mysql,此处用户名为root,第二行是密码123,后边六行用来修改mysql的字符集。后边六行可以一次性复制到 mysql> 之后然后回车。

mysql -u root -p 123SET character_set_client = utf8;SET character_set_server = utf8;SET character_set_results = utf8;SET character_set_connection = utf8;SET collation_server = utf8_general_ci ;SET collation_database = utf8_general_ci ;

 

3. 修改ASP.net工程中的web.xml中数据库连接字符串:

connectionString="server=127.0.0.1;User Id=root;password=123;Persist Security Info=True;database=myDBName;charset=utf8"

即:后边的charset为utf8。

 

4. 只有新建的数据库和表才能支持中文。完成以上操作后,创建table时,最后要加上CHARSET=utf8。如下所示:

CREATE TABLE  `test`.`user` (  `name` varchar(45) NOT NULL DEFAULT '',  PRIMARY KEY (`name`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;