mybatis plus插入数据遇到主键没有默认值的问题 原

2020-07-03 11:24:52 浏览数 (2)

一、我在添加的时候,无缘无辜的给我报

代码语言:javascript复制
java.sql.SQLException: Field 'id' doesn't have a default value

后来了解到 使用 mybatis-plus的insert方法,在底层会默认生成一个Long类型的UUID,这就导致跟数据库里面类型不一致导致错误,我们首先要做的是要把这个默认自增的主键给禁了

主键生成方式类型如下(IdType):

代码语言:javascript复制
AUTO(0, "数据库ID自增"),
INPUT(1, "用户输入ID"),
ID_WORKER(2, "全局唯一ID"),
UUID(3, "全局唯一ID"),
NONE(4, "该类型为未设置主键类型"),
ID_WORKER_STR(5, "字符串全局唯一ID");

我们可以设置主键的生成方式

代码语言:javascript复制
@TableId(value = "id",type = IdType.INPUT) 这种方式是主键手动输入

做完以上操作,再去新增就大功告成啦~

0 人点赞