数据库内容正常,取出来特殊字符乱码,如何解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库内容正常,取出来特殊字符乱码,如何解决相关的知识,希望对你有一定的参考价值。
jsp读取数据乱码原因如下:1、JSP连接数据库语句指定的编码不正确
解决方案:在JSP连接数据库的语句中,带上useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
2、JSP页面没有指定数据提交的编码,就会造成乱码:
解决方案:这种乱码的情况,只需在页面开头加上request.setCharacterEncoding("GBK"); 指定提交的即可。 参考技术A 客户端字符集的原因,
如何解决MySQL字符集乱码的问题?
这篇文章主要是给大家介绍一下关于如何解决MySQL字符集乱码的问题,相信很多小朋友在生活中会用到的,而且内容介绍的非常详细,且具有一定的参考学习价值,感兴趣的朋友不妨来看看,希望大家阅读之后有所收获。
前言
字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的选择问题,而且如果在数据库创建阶段没有正确选择字符集,那么可能在后期需要更换字符集,而字符集的更换是代价比较高的操作,也存在一定的风险,所以,我们推荐在应用开始阶段,就按照需求正确的选择合适的字符集,避免后期不必要的调整。
实战
1、安装MySQL数据库
2、乱码演示
乱码解决办法
从上面可以看出,set names latin1;改变了三个参数… 只要做到客户端,MySQL character-set-client,table charset三个字符集完全一致就可以保证一定不会有乱码出现。
方式:
1、在mysql命令行模式下执行set names xxx;
2、登录mysql的时候指定默认字符集
3、 修改/etc/sysconfig/i18n 文件,在my.cnf不指定默认字符集的情况下。
4、 修改my.cnf 文件,下面两个字段在任意一个字段都是可以的。
前两种1,2是临时解决方案,后面两种3,4是永久有效的方案
查看字符集
1、查看系统当前字符集设置,修改之后登陆mysql执行。show variables lile ‘character_set%’;
2、mysql常用字符集。执行命令show character set; 查看系统支持字符集。
字符集选择
1、如果处理各种各样的文字,发布到不同语言国家地区,选择Unicode。,对mysql对号utf-8。
2、只需中文,数据量很大,性能要求也高,选择gbk.。
3、处理移动物联网业务,选utf8mb4
建议在能够完全满足应用的前提下,尽量使用小的字符集。因为更小的字符集意味着能够节省空间、减少网络传输字节数,同时由于存储空间的较小间接的提高了系统的性能。
服务器字符集设置
mysql服务端重新启动后,这两个参数会改变为设定值。
切换字符集
将一种编码的数据库转换为另一种编码的数据。
常用转换数据库字符集方案
本文关于如何解决MySQL字符集乱码的问题的分享就到此结束,感谢各位的阅读!相信大家看完之后有更深的了解,如果还想学习更多知识,欢迎关注摩杜云行业资讯频道,更多精彩内容等着你来阅读。如果觉得这篇文章不错的话,可以分享给更多的人看到!
以上是关于数据库内容正常,取出来特殊字符乱码,如何解决的主要内容,如果未能解决你的问题,请参考以下文章
解决 ecshop 搜索特殊字符关键字(如:*,+,/)导致搜索结果乱码问题