Mybatis 向oracle批量插入与更新数据

插入

<insert id="batchSave" parameterType="java.util.List">
INSERT INTO T_UPLOAD_CELL_DATA (CELL_SN, PRODUCT_SN, TEST_DATE,
VOLTAGE_VALUE)
SELECT A.*
FROM(
<foreach collection="list" item="item" index="index"
separator="UNION ALL">
SELECT
#{item.cellSn} CELL_SN,
#{item.productSn} PRODUCT_SN,
#{item.testDate} TEST_DATE,
#{item.voltageValue} VOLTAGE_VALUE
FROM
dual
</foreach>
)A
</insert>

更新

<update id="batchUpdate" parameterType="java.util.List">
<foreach collection="list" item="item" index="index" open="begin"
close=";end;" separator=";">
update T_UPLOAD_CELL_DATA t
set
t.PRODUCT_SN=#{item.productSn},
t.TEST_DATE=#{item.testDate},
t.VOLTAGE_VALUE=#{item.voltageValue}
where t.CELL_SN = #{item.cellSn}
</foreach>
</update>
上一篇:mybatis+oracle批量插入报不符合协议和sql未正确结束


下一篇:Java 第四章 选择结构2