mybatis plus "trim suffixOverride"

74 阅读1分钟

根据您提供的代码,如果某个字段不为空而后面的字段为空,确实会在 SQL 语句中出现多余的逗号。为了解决这个问题,您可以使用 MyBatis 的 <trim> 元素来处理。下面是修正后的代码:

```xml
<update id="myUpdateById" parameterType="com.snackpub.service.eduworksheet.entity.JB4DataReport">
    UPDATE HYZJSYS.JB4
    SET
    <trim suffixOverrides=",">
        <if test="mzrs != null and mzrs != ''">
            mzrs = #{mzrs},
        </if>
        <if test="symc != null and symc != ''">
            symc = #{symc},
        </if>
        <if test="syssxk != null and syssxk != ''">
            syssxk = #{syssxk},
        </if>
        <if test="syzlb != null and syzlb != ''">
            syzlb = #{syzlb},
        </if>
        <if test="syzrs != null and syzrs != ''">
            syzrs = #{syzrs},
        </if>
    </trim>
    WHERE id = #{id}
</update>

通过使用 <trim> 元素的 suffixOverrides 属性,可以确保只有在字段不为空时才会添加逗号。这样就可以避免出现多余的逗号问题。希望这可以解决您的问题!如果还有其他疑问,请随时提问。