mybatis中更新字段,当字段为null或者空字符串就不更新

  • Post author:
  • Post category:其他



文章最前

: 我是Octopus,这个名字来源于我的中文名–章鱼;我热爱编程、热爱算法、热爱开源。所有源码在我的个人

github

;这博客是记录我学习的点点滴滴,如果您对 Python、Java、AI、算法有兴趣,可以关注我的动态,一起学习,共同进步。


相关文章:



  1. LeetCode:55. Jump Game(跳远比赛)



  2. Leetcode:300. Longest Increasing Subsequence(最大增长序列)


1.首先我写的sql语句:

<update id="updateProject" parameterMap="project">
        UPDATE project SET name =#{name},remote_log_url=#{remoteLogUrl},map_data=#{mapData}                     WHERE id=#{id}
    </update>

这种情况下,如果某个字段为空或者空字符串,就会报错,后面我进行了过滤处理:

<update id="updateProject" parameterMap="project">
        UPDATE project
        <trim prefix="set" suffixOverrides=",">
            <if test="name!=null and name!=''">name=#{name},</if>
            <if test="remoteLogUrl!=null and remoteLogUrl!=''">remote_log_url=#{remoteLogUrl},</if>
            <if test="mapData!=null and mapData!=''">map_data=#{mapData},</if>
        </trim>
        where id=#{id}
</update>

这种方式的好处就是,如果某个字段没有更新或为空字符串,就自动过滤掉该字段。这种的好处就是防止,只更新修改过值的字段。



版权声明:本文为zy345293721原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。