0、前言
- 我的MySQL版本是5.7的,8.x的版本不太一样
- 但是:思路都一样,出现本次的情况都是字符编码的问题,思路如下
- 1、检查编辑器工具,如:IDEA的setting ——> editor ——> file Encoding编码是否是
UTF-8
- 2、检查项目的MySQL链接配置文件中
url
中是否配置了useUnicode=true&characterEncoding=UTF-8
- 3、检查MySQL中的数据库和表的创建时是否选择了字符集和校对
- 1、检查编辑器工具,如:IDEA的setting ——> editor ——> file Encoding编码是否是
1、出现的错误
- 要是如下的操作都已经做了
-
IDEA中进行了文件编码设置
-
在IDEA的驱动文件中配置了
useUnicode=true&characterEncoding=UTF-8
- 数据库和表的创建中也选了字符集和核对
- 但是:出现往数据库中插入的中文信息成
?
了
- 那么原因就是安装MySQL时忘做了一件事,而我本人就是这种情况,当初漏掉下面这一步了
2、解决办法
方式一
- 1、在DOS窗口 / xshell中登录sql,查看自己sql的字符设置
-- 查看char开头的系统变量
show variables like 'char%';
- 注:下图是我已经配置过的设置,没配置过的话和下图是不一样的,若和下图的不一样,同时发生了我上述的事情,那就可以继续往下看了,否则的话,可以溜了
- 2、找到自己sql的安装目录,打开
my.ini
文件,加入如下信息
方式二
- 要是感觉改配置文件太麻烦了,在进入前面第一步之后,即:进入了下面这个界面
-
看到图中哪一个变量不是
utf8
,就利用set
指令修改为utf8
-
假如:上图中
character_set_client
不是utf8
,那么:直接通过set character_set_client = utf8;
执行命令即可修改- 注意:在英文输入法下输入,同时语句用
;
结束
- 注意:在英文输入法下输入,同时语句用
- 最后:重新关闭/启动sql服务
-
可以选择在任务管理器关闭/启动服务( 快捷键
ctrl + alt + delete
,然后选择任务管理器,最后选择服务找到mysql右键停止 / 启动就可以了 ) -
也可以选择在命令符cmd中输入
net stop mysql / net start mysql
,注意:使用管理员权限启动DOS窗口 / cmd命令符
-
3、解决效果
- 中文成
?
的问题就解决了!!!