向MySQL数据库存中文显示乱码
作者:网络转载 发布时间:[ 2016/12/29 10:26:51 ] 推荐标签:数据库 MySQL
一、前言
数据库是我们软件开发中一个非常重要的组成部分,以前小编使用的是SQL Server,没有遇到过存储的中文是乱码的情况,后来在ssh的项目中使用的是MySQL的项目,遇到了乱码的问题,只要向数据库中存储中文数据会是乱码,存储英文没有问题,小编通过研究了研究把这中问题总结了一下:
二、乱码解决方案
想到乱码自然而然的想到了是数据格式不对的原因:于是小编研究了自己的代码的格式,常用的格式有:UTF-8,GBK,GB2312
①UTF-8(8-bit Unicode Transformation Format)在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。
②GBK (Chinese Internal Code Specification)《汉字内码扩展规范》
③GB2312 国标码 信息交换用汉字编码字符集,汉字处理、汉字通信等系统之间的信息交换,通行于中国大陆;新加坡等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持GB 2312。
了解更多,猛戳这里。
三、解决方案 先从MySQL入手
检查数据库、数据表、数据字段的编码格式,是否为utf-8.不是的改成utf-8.通过客户端检查很简单了,修改数据库属性,小编使用的是utf8。
从编辑软件入手。
以前小编在做.Net的项目的时候也遇到过这种情况,当时是修改了配置文件中的链接数据库的语句,可以看出小编在语句中添加了charset=gb2312,这个可以把我们的数据存储转化为gb2312。
<add key="ConnectionString" value="server=192.168.21.185;database=ymgj;uid=root;pwd=123456;charset=gb2312;allow zero datetime=true"/>
同理在java中同样可以使用这样的方法,在java中我们使用的是jdbc链接数据库,只需要添加?useUnicode=true&characterEncoding=utf8:
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///shop?useUnicode=true&characterEncoding=utf8
jdbc.user=root
jdbc.password =123
到这里解决了向数据库存储数据是乱码的问题了。如果有更好的办法小编会在以后向大家更新。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11