使用mybatis插入数据时,mysql的字段默认值不生效的问题(坑)

使用mybatis插入数据时,mysql的字段默认值不生效的问题
解决办法:

使用动态sql(记录本人踩过的坑)

   <sql id="if_insert_column"> 
    <trim suffixOverrides=",">
    <if test="zxywzj != null">ZXYWZJ,</if>
    <if test="zxywnr != null">ZXYWNR,</if>
    <if test="jgid != null">JGID,</if>
    <if test="zxzt != null">ZXZT,</if>
    <if test="dwzj != null">DWZJ,</if>
    <if test="cjsj != null">CJSJ,</if>
    <if test="cjr != null">CJR,</if>
    <if test="xgsj != null">XGSJ,</if>
    <if test="xgr != null">XGR,</if>
    <if test="bz != null">BZ</if>
    </trim>
</sql>
<sql id="if_insert_value">
    <trim suffixOverrides=",">
    <if test="zxywzj != null">#{zxywzj},</if>
    <if test="zxywnr != null">#{zxywnr},</if>
    <if test="jgid != null">#{jgid},</if>
    <if test="zxzt != null">#{zxzt},</if>
    <if test="dwzj != null">#{dwzj},</if>
    <if test="cjsj != null">#{cjsj},</if>
    <if test="cjr != null">#{cjr},</if>
    <if test="xgsj != null">#{xgsj},</if>
    <if test="xgr != null">#{xgr},</if>
    <if test="bz != null">#{bz}</if>
    </trim>
</sql>
<!--新增所有列 并返回主键 这种方式存在问题:主键不一致-->
<insert id="insertSelective" useGeneratedKeys="true" keyProperty="zxywzj">
    insert into tb_name
        (<include refid="if_insert_column"/>)
    values
        (<include refid="if_insert_value"/>)
</insert>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值