报错如下:
2022-08-23 09:35:49,856 - SQL Error: 1366, SQLState: HY000
2022-08-23 09:35:49,856 - Incorrect string value: '\xCF\xC2\xD4\xD8",...' for column 'config' at row 1
org.springframework.orm.hibernate5.HibernateJdbcException: JDBC exception on Hibernate data access: SQLException for SQL [n/a]; SQL state [HY000]; error code [1366]; could not execute statement; nested exception is org.hibernate.exception.GenericJDBCException: could not execute statement
at org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:219)
解决方法:
方法一:每次创建库的时候都设置字符编码
--例如我创建一个test数据库
create database if not exists test set character utf8mb4;
方法二:更改数据库编码配置
1.查看mysql编码方式,检查编码
show variables like 'character%';
2.通过mysql服务找到属性,复制mysql配置文件所在的路径
3.通过该路径找到my.ini
4.修改配置文件先备份在修改,防止出错
[client] 客户端配置项
[mysql] 客户端、服务端共同配置项
[musqld] 服务器配置项
重点!!!
[mysql] 需要修改的地方
[mysqld]需要修改的地方
5.改完记得保存。
注意事项:
1.改完配置后记得保存,然后重启mysql服务器
2.重启电脑你插入还是同样报错,这是正常的,重新创建一个数据库,以后再也不会有这种错误影响了,旧的数据库还是以前的编码,但是改完配置之后创建的所有数据库服务端,系统,都是按照utf8的