Java后台,mysql插入特殊字符出现乱码,求破

Java后台,mysql插入特殊字符出现乱码,求破,第1张

这是编码引起的,把数据库表的那个字段编码改成utf-8格式

alter table user(表名) CHANGE old(老字段) new(新字段) varchar(100) charset utf8

后面的语句的编码就是utf8,不要改成utf-8,MySQL不识别,不用改字段名称就直接都写原来的字段名。

把页面的编码方式 改成utf-8 或者 把页面传上来的数据处理一下

String str=new String(strgetBytes("iso8859-1"),"utf-8")

你用的什么数据库

你得排除两种情况:1存到数据的就是乱码的,在存到数据库前一行 打印出内容,如果没有乱码,排除这种情况

2存到数据库是好的,取出来是乱码的。不需要测试。

第一种情况排除后,请仔细了解是什么数据库,对中文存储及数据库编码和数据库表字段编码

在连接数据库时类比这个加上

"jdbc:mysql://localhost:3306/数据库名称useUnicode=true&characterEncoding=GBK"

你这个问题具体的不好说是哪的编码不一致,但是数据库跟程序的编码不一致时肯定的

知道问题的所在了,你就要去找,首先你要知道都哪里可以进行编码

首先,在Myeclipse中至少有三个地方可以进行编码:

    1:window->Preferences->General->WorkSpace将默认的GBK设置成UTF-8;

    2:项目右键->Properties->resource将Text file encoding中的GBK改成UTF-8;

    3:window->Preferences->Myeclipse->Files and Editors下边有很多子选项,点开每一个子选项会有一个字符编码设置,将自己需要的子选项的字符编码设置成UTF-8

    

其次,你要看一下你代码里JDBC连接语句是否设置了编码格式,在此,我举个小例子,仅供参考jdbcurl = jdbc\:mysql\://localhost\:3306/familysafemanagementuseUnicode\=true&characterEncoding\=UTF-8    注意最后边的编码

再有,就是数据库的编码格式设置了

    1、查看连接属性,将编码格式设置为UTF-8

    2、查看数据库属性,将编码格式设置为UTF-8

    3、查看具体的表的属性,将编码格式设置为UTF-8

    4、查看具体字段属性,将编码格式设置为UTF-8

    5、show variables like "%char%";查看默认的编码格式,使用语句设置编码格式,具体语句如下:

    SET character_set_client='utf8';

    SET character_set_connection='utf8';

    SET character_set_database ='utf8';

    SET character_set_results ='utf8';

    SET character_set_server ='utf8';

    SET character_set_system ='utf8';

如果能将以上 *** 作完成,基本上任何乱码都可以解决了

以上就是关于Java后台,mysql插入特殊字符出现乱码,求破全部的内容,包括:Java后台,mysql插入特殊字符出现乱码,求破、使用java程序向oracle数据库中存储数据,部分汉字出现乱码、在java 里面输入的文字到数据库里面为什么最后一个字会是乱码怎么解决编码用的是utf-8等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/sjk/10201620.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存