REPLACE的运行与INSERT很相似。只有一点例外,假如表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。
举例如下(.xml中的sql语句)
<insert id="..." parameterType="..." >
REPLACE INTO evaluate_tag_map
(tag_id, evaluate_id, state) VALUES
<foreach collection="list" index="index" item="item" separator=",">
(
#{item.tagId, jdbcType=BIGINT},
#{item.evaluateId, jdbcType=BIGINT},
#{item.state, jdbcType=INTEGER}
)
</foreach>
</insert>