RuoYi框架插入数据报错1406, Data too long for column

前言

在使用RuoYi-Vue框架时,在插入数据时,会报1406错误,原因是数据长度超出了字段长度。这个问题尝试了很多次,最终还是找到了解决方法。

问题

RuoYi-Vue框架时,采用官方内置的sql语句执行。在执行的时候,表全都成功创建了,但是插入数据时,会报1406错误,原因是数据长度超出了字段长度,即:Data too long for column 'xxx' at row 1

当时并没有当一回事,但是登录的时候报错:用户不存在。

于是查看数据库,发现sys_user表为空。仔细一看,只有少数几张表存入了数据。但是使用DBGate查看数据表中的数据的时候,发现所有中文全都乱码了。

解决方案

既然中文不支持,那就干脆全都设置为中文。

搜索ry_20231130.sql文件中的engine=innodb,将其修改为engine=innodb charset=gb2312,同样的方法用于另一个文件quartz.sql。于是插入数据的时候就没问题了。