Oracle使用foreach批量操作数据
新增:
<insert id="insertElement" parameterType="java.util.List"> INSERT INTO TABLENAME(FIELD1, FIELD2, FIELD3) <foreach collection="list" item="item" separator="UNION ALL" > SELECT #{item.FIELD1}, #{item.FIELD2}, #{item.FIELD3} FROM DUAL </foreach> <insert>
修改
<update id="updateElement" parameterType="java.util.List"> <foreach collection="list" item="item" index="index" open="begin" close=";end;" separator=";"> UPDATE TABLENAME <set> NUMBERS =#{item.numbers} </set> WHERE ID= #{item.id} AND TYPE= #{item.type} </foreach> </update>
删除
<delete id="deleteUnitClass" parameterType="String"> DELETE FROM SYS_UNIT_CLASS WHERE CLASS_CODE IN <foreach collection="list" item="item" index="no" open="(" separator="," close=")"> #{item} </foreach> </delete>
参考链接:https://www.csdn.net/gather_24/MtTaMg4sNzQwMS1ibG9n.html