我是靠谱客的博主 苗条雨,这篇文章主要介绍数据库中的批量操作,现在分享给大家,希望可以做个参考。

批量操作在很多的系统中经常使用:

对于大量数据时如何进行批量操作能高效的提供系统速度:

基础for循环很难达到效果,这种情况效率低、容易出错、一条数据出错这个循环都会停止。

可以对大量数据进行分批操作,这回明显的提供效率,出错只会在这个批次里停止。

对应批量操作往往只是对这些大量数据里的每一个字段进行修改,此时我们只需要把要修改的值和需修改的数据(id)传递给mysql数据库即可,不需要每一条遍历,虽然数据库的操作也是一条一条的进行,但数据库的事务处理更加的安全有效:

webObj.setUpdater(user.getUserId());
webObj.setUpdateDate(new Date());
// 只需更改数据状态
webObj.setState(ConstantsDict.DATA_STATE_DELETE);

String array[] = ids.split(",");
List<String> list = new ArrayList<String>();
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}

webObj.setKeys(list);
itemInfoService.updateOfBatch(webObj);


xml中:

<!-- common updateOfBatch SQL  -->
<update id="updateOfBatch" parameterType="ItemInfo">
UPDATE item_info T
<set>
<if test="updateDate != null">
T.update_date = #{updateDate},
</if>
<if test="updater != null and updater != ''">
T.updater = #{updater},
</if>
<if test="state != null and state != ''">
T.state = #{state},
</if>
</set>
<where>
T.ID in(
<foreach collection="keys" item="item" index="index" separator=","> 
#{item,jdbcType=BIGINT}
</foreach>
)
</where>
</update>

最后

以上就是苗条雨最近收集整理的关于数据库中的批量操作的全部内容,更多相关数据库中内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部