1、表中有三个字段,已经有100多万条数据,每次插入10万条数据 时间单位:秒

  秒 Dapper批量Model插入时间:40.6165513,Dapper单条Model插入时间:95.9492972,Dapper单条sql插入时间:91.0191095,原生单条sql插入时间:90.5096905

  秒 Dapper批量Model插入时间:40.4729053,Dapper单条Model插入时间:99.0270506,Dapper单条sql插入时间:92.7325932,原生单条sql插入时间:91.9713511

  秒 Dapper批量Model插入时间:41.0260065,Dapper单条Model插入时间:95.8173737,Dapper单条sql插入时间:90.9012987,原生单条sql插入时间:90.2153092

  秒 Dapper批量Model插入时间:41.5675273,Dapper单条Model插入时间:101.9446306,Dapper单条sql插入时间:94.4770289,原生单条sql插入时间:92.9758614

 

测试时间代码

List<gk_area> lst = new List<gk_area>();
            for (int i = 0; i < 100000; i++)
            {
                gk_area tmp = new gk_area();
                tmp.gk_AreaId = Guid.NewGuid().ToString("N");
                tmp.gk_AreaName = "测试:" + tmp.gk_AreaId;
                tmp.gk_DelFlag = "0";
                lst.Add(tmp);
            }
            if (true)
            {
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); //  开始监视代码运行时间
                new DapperHelper().InsertBulk<gk_area>(lst);         //  需要测试的代码 ....
                stopwatch.Stop(); //  停止监视
                TimeSpan timespan = stopwatch.Elapsed; //  获取当前实例测量得出的总时间
                double seconds = timespan.TotalSeconds;  //  总秒数
                timeStr += "秒 Dapper批量Model插入时间:" + seconds + ",";
            }

            lst = new List<gk_area>();
            for (int i = 0; i < 100000; i++)
            {
                gk_area tmp = new gk_area();
                tmp.gk_AreaId = Guid.NewGuid().ToString("N");
                tmp.gk_AreaName = "测试:" + tmp.gk_AreaId;
                tmp.gk_DelFlag = "0";
                lst.Add(tmp);
            }
            if (true)
            {
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); //  开始监视代码运行时间
                //  需要测试的代码 ....
                foreach (var item in lst)
                {
                    new DapperHelper().Insert<gk_area>(item);
                }
                stopwatch.Stop(); //  停止监视
                TimeSpan timespan = stopwatch.Elapsed; //  获取当前实例测量得出的总时间
                double seconds = timespan.TotalSeconds;  //  总秒数
                timeStr += "Dapper单条Model插入时间:" + seconds + ",";
            }

            lst = new List<gk_area>();
            for (int i = 0; i < 100000; i++)
            {
                gk_area tmp = new gk_area();
                tmp.gk_AreaId = Guid.NewGuid().ToString("N");
                tmp.gk_AreaName = "测试:" + tmp.gk_AreaId;
                tmp.gk_DelFlag = "0";
                lst.Add(tmp);
            }
            if (true)
            {
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); //  开始监视代码运行时间
                //  需要测试的代码 ....
                foreach (var item in lst)
                {
                    new DapperHelper().ExcuteNonQuery("insert into gk_area (gk_AreaId,gk_AreaName) values ('" + item.gk_AreaId + "','" + item.gk_AreaName + "')");
                }
                stopwatch.Stop(); //  停止监视
                TimeSpan timespan = stopwatch.Elapsed; //  获取当前实例测量得出的总时间
                double seconds = timespan.TotalSeconds;  //  总秒数
                timeStr += "Dapper单条sql插入时间:" + seconds + ",";
            }

            lst = new List<gk_area>();
            for (int i = 0; i < 100000; i++)
            {
                gk_area tmp = new gk_area();
                tmp.gk_AreaId = Guid.NewGuid().ToString("N");
                tmp.gk_AreaName = "测试:" + tmp.gk_AreaId;
                tmp.gk_DelFlag = "0";
                lst.Add(tmp);
            }
            if (true)
            {
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); //  开始监视代码运行时间
                //  需要测试的代码 ....
                foreach (var item in lst)
                {
                    new DapperHelper().ExecuteNonQuery1("insert into gk_area (gk_AreaId,gk_AreaName) values ('" + item.gk_AreaId + "','" + item.gk_AreaName + "')");
                }
                stopwatch.Stop(); //  停止监视
                TimeSpan timespan = stopwatch.Elapsed; //  获取当前实例测量得出的总时间
                double seconds = timespan.TotalSeconds;  //  总秒数
                timeStr += "原始单条sql插入时间:" + seconds + ",";
            }
View Code

相关文章: