开发者

mybatis存在更新不存在新增问题

开发者 https://www.devze.com 2024-08-20 10:42 出处:网络 作者: @淡 定
目录myBATis存在更新不存在新增mybatis存在就更新,不存在就插入条件方法总结mybatis存在更新不存在新增
目录
  • myBATis存在更新不存在新增
  • mybatis存在就更新,不存在就插入
    • 条件
    • 方法
  • 总结

    mybatis存在更新不存在新增

    主键或者唯一索引,有相同的字段进行添加时进行其他字段更新,否则进行新增

    <insert id="insertFwdcBlacklist" parameterType="com.qujie.mintwo.life.fwdc.entity.FwdcBlacklist">
            insert   into fwdc_blacklist
            <trim prefix="(" suffix=")" suffixOverrides=",">
                <if test="id != null">id,</if>
                <if test="shopId != null">shop_id,</if>编程
                <if test="shopName != null">shop_name,</if>
                <if test="sdmerid != null">sdmerid,</if>
                <if test="shieldFunction != null">shield_function,</if>
                <if test="creditCode != null">credit_code,</if>
                <if test="idcard != null">idcard,</if>
                <if test="addTime != null">add_time,</if>
                <编程客栈if test="addUserId != null">add_user_id,</if>
                <if test="updateTime != null">update_time,</if>
                <if test="updateUserId != null">update_user_id,</if>
                <if test="remark != null">remark,</if>
             </trim>
            <trim prefix="values (" suffix=")" suffixOverrides=",">
                <if test="id != null">#{id},</if>
                <if test="shopId != null">#{shopId},</if>
                <if test="shopName != null">#{shopName},</if>
                <if test="sdmerid != null">#{sdmerid},</if>
                <if test="shieldFunctionjs != null">#{shieldFunction},</if>
                <if test="creditCode != null">#{creditCode},</if>
                <if test="idcard != null">#{idcard},</if>
                <if test="addTime != null">#{addTime},</if>
                <if test="addUserId != null">#{addUserId},</if>
                <if test="updateTime != null">#{updateTime},</if>
                <if test="updatephpUserId != null">#{updateUserId},</if>
                <if test="remark != null">#{remark},</if>
             </trimhttp://www.devze.com>
            ON DUPLICATE KEY UPDATE
            shield_function=#{shieldFunction}
        </insert>
    

    mybatis存在就更新,不存在就插入

    条件

    主键或唯一索引在现有表中已经存在

    方法

    on duplicate key update

    <update id= "userInfo">
    insert into user
    (id,username,age)
    values
    (#{id},#{username},#{age})
    on duplicate key update
    username=values(username),
    age=values(age)
    <update>

    当id在现有表中存在时,就会执行update语句

    注意事项:

    • 后台用Integer
    • 而非int去接收传参(Integer初始值为null,而int初始值为0)
    • 否则插入失败

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号