时间:2021-07-01 10:21:17 帮助过:5人阅读
批量插入sql语句:
<insert id="insertBatch" parameterType="java.util.List"> BEGIN <foreach collection="list" item="item" index="index" separator=";"> INSERT INTO STRUCTURE( id, structureNAME, PARENTID, structureType, description, deptId, propertyCompanyId, sort, communityId) VALUES ( #{item.id,jdbcType=VARCHAR}, #{item.structureName,jdbcType=VARCHAR}, #{item.parentId,jdbcType=VARCHAR}, #{item.structureType,jdbcType=NUMERIC}, #{item.description,jdbcType=VARCHAR}, #{item.deptId,jdbcType=VARCHAR}, #{item.propertyCompanyId,jdbcType=VARCHAR}, #{item.sort,jdbcType=VARCHAR}, #{item.communityId,jdbcType=VARCHAR}) </foreach> ;END ; </insert>
性能测试结果:
数量级 | 批量插入耗时(ms) | 逐条插入耗时(ms) |
10 | 50 | 68 |
100 | 197 | 257 |
1600 | 1671 | 33384 |
没想到到千级别的数量级就已经有如此巨大的耗时差别。
不知道是否有写法,以及数据库类型上的影响,暂时做个记录供自己参考。
基于mybatis向oracle中插入数据的性能对比
标签:数据 http insert rac 结构 ret arc tab structure