java操作数据库,查询表出现乱码。
1.分析出现问题原因
根据出现乱码‘?’,可以判断可能是插入的数据中含有中文而数据库编码方式不兼容中文导致的。
2.如何解决?
根据上面的判断,需要修改数据库的编码方式。
(1)找到安装mysql的目录,如下图所示情况
(2)创建myini配置文件,具体内容如下(注意myini文件不是放入到bin目录里面!!!)
[client]#客户端
default-character-set=utf8
port = 3306
[mysqld]#服务器
basedir=D:\environment\mysql\mysql-5.7.19\mysql-5.7.19- winx64\
datadir=D:\environment\mysql\mysql-5.7.19\mysql-5.7.19-winx64\data\
port=3306
skip-grant-tables
character_set_server=utf8
(3)配置完成后需要重新启动mysql服务(在管理员权限下执行命令行)
①关闭服务
net stop mysql
②启动服务
net start mysql
(4)登录mysql查询编码方式
通过如下命令行查询 show variables like 'character_set_%';
小结:修改mysql的编码方式:①找到mysql的安装目录下的bin目录②在此处创建一个配置文件(如果已经存在则直接修改内容),并修改编码格式 ④重启mysql服务即可成功设置编码格式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!