mysql数据库的表中不能存储汉字以及生僻字不能存储的解决方法

发布时间:2021-01-11编辑:脚本学堂
本文分别介绍了mysql数据库不能存储中文和仅不能存储生僻汉字两种情况的解决方法。
1、存储进数据库的汉字都变成????这样的乱码解决方法:

这种情况是因为编码不一致导致的,即使重新安装mysql/ target=_blank class=infotextkey>mysql数据库也不能解决问题,你可以在MYSQL根目录找到my.ini文件,修改里面的default-character-set=      默认是latin1   把他改成GB2312或UTF-8这里改成什么要由你网站本身的编码决定 ,有2个地方都把它改成:GB2312 或UTF-8 ,然后重启动MYSQL服务器就好了!!

2、有些生僻字不能存储的解决方法:

有些字存不进MySql数据库里面,如:(喆) 字,其它的汉字很正常!是不是生僻字就存不进去了呢?
   错误提示是:1366 - Incorrect string value:'xE5x96x86' for column 'name' at row 2.
这种问题即使安装时选择GB2312也不行,因为这种字已经被废弃了,如果要把它存进去,可以把相对的字段长度改的更大一些,可能是这种字在存储的时候占用的字节很多导致的。
如果是某些汉字存不进数据库中,可能是你的sql语句的问题,如果是乱码要看看你的数据库表字符集编码是不是gbk或gb2312,如果已经设置成gbk或gb2312,那再去看看JDBC连接URL是不是类似
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk