请问插入后变为乱吗怎么解决?

请问插入后变为乱吗怎么解决?

jdbc 插入数据库后变为乱码

http://img1.sycdn.imooc.com//climg/5bd1903e0001e7db24901166.jpg

http://img1.sycdn.imooc.com//climg/5bd1907600019a4410140446.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
慕布斯37364 2018-10-26 13:26:16

兄弟,你之前http://img1.sycdn.imooc.com//climg/5bd2a5410001a77504570080.jpg不乱码的这种是怎么插入的?导入sql文件?还是直接在命令行里运行的创建表的语句?

慕布斯37364 2018-10-26 10:05:41

1、不知道你见数据库的表时有没有设置utf-8,要是没有,你可以重新建一下表,建表的时候设置一下编码

2、不知道你有么有那种第三方的软件,就是可以直观看到表中数据,不用cmd的那种,比如老师讲的Workbench那种。看看表里是否是乱码呢?


好帮手慕阿莹 2018-10-25 19:30:52

因为导致乱码的原因有很多种,同学可以排查一下。

1、同学可以再查询一下,看看查出来的数据是否是乱码。

2、查询一下编码集。查询和修改编码集的操作如下:

在mysql命令行执行这个命令show variables like '%char%'; 

http://img1.sycdn.imooc.com//climg/5bd1a5b5000119a305540351.jpg

除了value为binary这行都设置成utf-8

修改命令如下,例如修改character_set_client 这行:

http://img1.sycdn.imooc.com//climg/5bd1a6280001d2d903720098.jpg


如果我的回答解决了你的疑惑,请采纳!祝学习愉快!



  • 提问者 iStream #1
    我的都是utf8
    2018-10-26 08:50:56
  • 好帮手慕阿莹 回复 提问者 iStream #2
    建议同学把存进去的数据用java代码中查询一下,并打印在控制台上,看看查出来的是否是乱码呢?祝学习愉快。
    2018-10-26 09:57:11
好帮手慕阿莹 2018-10-25 18:14:07

建议同学再3306/db1后边加上 ?useUnicode=true&characterEncoding=utf8 试试

改成:

jdbc:mysql://localhost:3306/db1?useUnicode=true&characterEncoding=utf8

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 iStream #1
    这个不可以,
    2018-10-25 18:56:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java数据库开发与实战应用2018版
  • 参与学习           人
  • 提交作业       277    份
  • 解答问题       4297    个

Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师