这篇文章主要介绍了MYSQL中文乱码问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Mysql中文乱码问题如何解决文章都会有所收获,下面我们一起来看看吧。一、乱码的原因: client客户端的编码不是
这篇文章主要介绍了MYSQL中文乱码问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Mysql中文乱码问题如何解决文章都会有所收获,下面我们一起来看看吧。
client客户端的编码不是utf8
server端的编码不是utf8
database数据库的编码不是utf8
数据库的表的编码不是utf8
表中的列字段编码不是utf8
主要的原因在于前三个偏多。
mysql>show variables like ‘character%';
此截图是解决之后的,查看哪个不是和上面一样。
对/etc/mysql/my.cnf 配置文件进行修改
[mysqld]character-set-server=utf8[client]default-character-set=utf8[mysql]default-character-set=utf8
由mysql -uroot -p命令进入mysql,输入以下设置
SET character_set_client = utf8;SET character_set_results = utf8;SET character_set_connection = utf8;
针对在客户端输入:数据库、表、列字段设置
alter database <数据库名> character set utf8;
alter table <表名> character set utf8;
alter table <表名> modify <字段名> character set utf8;
注意:设置之后记得重启,输入命令:service mysql restart
出现问题的形式:项目的服务器向数据库插入数据时,表中的数据中文为乱码。
解决方法:对封装的数据库操作类中,建立连接数据库时,设置字符集utf8
//建立连接后, 自动调用设置字符集语句,_dbConf._charset = utf8 if(!_dbConf._charset.empty()) { if (mysql_options(_pstMQl, MYSQL_SET_CHARSET_NAME, _dbConf._charset.c_str())) { throw MysqlHelper_Exception(string("MysqlHelper::connect: mysql_options MYSQL_SET_CHARSET_NAME ") + _dbConf._charset + ":" + string(mysql_error(_pstMql))); } }
关于“MYSQL中文乱码问题如何解决”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“MYSQL中文乱码问题如何解决”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网数据库频道。
--结束END--
本文标题: MYSQL中文乱码问题如何解决
本文链接: https://www.lsjlt.com/news/340805.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0