如上图所示:我明明设置了默认值为0,但是插入的字段确实空,耗费了几个小时,我算是被自己蠢哭了。
最开始的时候,调用的是插入全部的接口。如下图所示:
INSERT 表名 (
FID_ID,
USER_ID,
FIDR_DATE,
FIDR_DEL,
FIDR_STATUS,
FIDR_GROUP
) VALUES (
#{fidId},
#{userId},
#{fidrDate},
#{fidrDel},
#{fidrStatus},
#{fidrGroup}
然后再 service实现层的时候,我又没有给“FIDR_GROUP”这个字段赋值,所以插入的时候,插入的为NULL。后来改用了选择插入
INSERT 表名
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="fidId != null">
FID_ID,
</if>
<if test="userId != null">
USER_ID,
</if>
<if test="fidrDate != null">
FIDR_DATE,
</if>
<if test="fidrDel != null">
FIDR_DEL,
</if>
<if test="fidrStatus != null">
FIDR_STATUS,
</if>
<if test="fidrGroup != null">
FIDR_GROUP,
</if>
</trim>
VALUES
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="fidId != null">
#{fidId},
</if>
<if test="userId != null">
#{userId},
</if>
<if test="fidrDate != null">
#{fidrDate},
</if>
<if test="fidrDel != null">
#{fidrDel},
</if>
<if test="fidrStatus != null">
#{fidrStatus},
</if>
<if test="fidrGroup != null">
#{fidrGroup},
</if>
</trim>
这样的话,不给设置默认值字段传值,就不会影响了