mybatis decimal类型字段 值为零更新失败

问题背景:
数据库存在一个 decimal类型的金额字段

操作SQL的场景是:
更新表的这个金额字段的值为零

更新SQL写法如下:

    <if test="amount != null and amount != ''">
        amount = #{amount,jdbcType=DECIMAL},
    </if>

问题:更新失败 SQL并不认为它是在进行更新

原因:
该类型decimal 或者Integer类型 如果值为零 (amount = 0)时
mybatis 对于 amount == '' 的判断是 true

所以导致以上的问题 , 去掉amount != '' 判断就可以解决问题了

(0)

相关推荐