Mybatis动态SQL之set标签

匿名 (未验证) 提交于 2019-12-03 00:25:02

ͬwhere标签功能类似,where用去去除第一个条件中出现的and前缀,那么set标签就是去除最后一个更新字段语句中出现的,[逗号]后缀。

XML映射文件中update部分:

<!--set修改标签--> <update id="updateUseSetTag" parameterType="com.heiketu.testpackage.pojo.Product">     UPDATE       Products         <set>             <if test="vendId != null and vendId != ''">                 vend_id = #{vendId},             </if>             <if test="prodName != null and prodName != ''">                 prod_name = #{prodName},             </if>             <if test="prodDesc != null and prodDesc != ''">                 prod_desc = #{prodDesc},             </if>         </set>       <where>           prod_id = #{prodId}       </where> </update>

where 和 set 完全都可以被trim替换使用。如下代码:

<!--set修改标签--> <update id="updateUseSetTag" parameterType="com.heiketu.testpackage.pojo.Product">     UPDATE       Products         <trim prefix="set" prefixOverrides="," suffixOverrides=",">             <if test="vendId != null and vendId != ''">                 vend_id = #{vendId},             </if>             <if test="prodName != null and prodName != ''">                 prod_name = #{prodName},             </if>             <if test="prodDesc != null and prodDesc != ''">                 prod_desc = #{prodDesc},             </if>         </trim>       <where>           prod_id = #{prodId}       </where> </update>
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!