但是数据库属性一直修改不成功,如何解决?

在做java业务层测试时,向数据库新添数据,但是中文会出现乱码

在MySQL在中修改数据库属性
一直修改不了,改了之后又会变回下图这样子
因为一直出现乱码,这是唯一可能的原因,但是数据库属性一直修改不成功,所以很苦恼

img

img

img

字符集要选utf8,不要选utf8mb4
排序规则要选utf8_general_ci
此外,你应该在数据库默认字符集里就修改成utf8,否则你每建立一个text类型的字段都需要手动改一遍字符集,累死
还有,表里有数据的情况下是不可以改编码的
先把数据清了

字节编码的问题,你的导入数据编码格式是什么格式的,最好统一都用utf-8的

是你写入数据库时你的字符编码与数据库存储的字符编码不一致,可以指定字符编码,或作编码转换 就是把你存储变量的字符编码显式的转换为utf-8编码,然后再写入数据库即可

你这字符集
选择 utf8mb4

修改这个字段的字符编码就可以了,百度有

  1. 检查数据从前端到Controller层接口时是否为乱码
  2. 如果上一步没有乱码,检查jdbc配置文件中url配置是否有指定编码characterEncoding=utf-8

补充:utf8mb4是utf8的拓展,对于你这个问题来说,选哪个都不影响。