zoukankan      html  css  js  c++  java
  • mysql 批量插入与单条插入 的效率比较

    1、数据插入性能(单个插入和批量插入)
    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. public class Test {  
    2.   
    3.     private Long id;  
    4.   
    5.     private String test;  
    6.   
    7.     public Long getId() {  
    8.         return id;  
    9.     }  
    10.   
    11.     public void setId(Long id) {  
    12.         this.id = id;  
    13.     }  
    14.   
    15.     public String getTest() {  
    16.         return test;  
    17.     }  
    18.   
    19.     public void setTest(String test) {  
    20.         this.test = test;  
    21.     }  
    22. }  

    mapper.xml文件

    [html] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. <?xml version="1.0" encoding="UTF-8" ?>  
    2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >  
    3. <mapper namespace="com.astrospace.test.mapper.TestMapper" >  
    4.     <resultMap id="test" type="com.astrospace.test.dmo.Test" >  
    5.         <id property="id" column="ID"/>  
    6.         <result property="test" column="TEST" />  
    7.     </resultMap>  
    8.   
    9.     <insert id="add" parameterType="com.astrospace.test.dmo.Test">  
    10.         INSERT INTO TEST(ID,TEST) VALUES(#{id},#{test});  
    11.     </insert>  
    12.   
    13.     <insert id="batchAdd" parameterType="java.util.List">  
    14.         INSERT INTO TEST(ID,TEST)  
    15.         VALUES  
    16.         <foreach collection="list" item="item" index="index" separator="," >  
    17.             (#{item.id},#{item.test})  
    18.         </foreach>  
    19.     </insert>  
    20.   
    21. </mapper>  

    调用add和batchAdd方法即可。

    不同数据量测试5次,结果如下:

    单独插入50000条数据平均耗时:233748ms
    批量插入50000条数据平均耗时:2590ms
    对比:效率差50倍
    单独插入10000条数据平均耗时:22036ms
    批量插入10000条数据平均耗时:3330ms
    对比:效率差6倍
    单独插入1000条数据平均耗时:3122ms
    批量插入1000条数据平均耗时:374ms
    对比:效率差8倍

    数据越多,效率愈发明显。

  • 相关阅读:
    noip2001统计单词个数
    查看大图 zoomImage
    图片懒加载 lazyload
    ANSI_NULLS 和 QUOTED_IDENTIFIER
    Framewrok损坏导致卸载不了的解决办法
    kindeditor 上传图片 显示绝对 路径
    Could not load file or assembly 'MagickNet.dll'
    sql server 复制 需要有实际的服务器名称才能连接到服务器……
    iisapp 命令 弹出 iisschlp.wsc [88,25] 属性值无效 progid
    IIS 301重定向 报错 地址后面有eurl.axd
  • 原文地址:https://www.cnblogs.com/toSeeMyDream/p/6846505.html
Copyright © 2011-2022 走看看