SQL批量操作
业务中要遍历3000条数据并更新两张表,耗时严重,先对其SQL进行批量更新操作,减少数据库消耗
一、为什么要批量操作?
数据库是基于磁盘保存的,每次增删查改都要进行IO,消耗大量资源,在for循环中每次都去insert没有必要,把所有字段放在list里,for循环结束后,批量插入
二、批量操作
batchInsert批量操作
<insert id="batchInsert" useGeneratedKeys="true" keyProperty="id">
insert into table (userId,name,birthday) values
<foreach collection="list" item="item" separator=",">
(#{item.userId},#{item.name},#{item.birthday})
</foreach>
</insert>