mysql插入多条数据时间复杂度比较,mysql插入多条


mysql插入多条数据时间复杂度比较,mysql插入多条数据

  • SQL脚本

select * from users;

  • 方式一:

insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");

  • 方式二:

insert into users(name, age, course_id) VALUES("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0")


  • 时间损耗

在插入上面24条数据的时候发现两者的执行效率相差比较大(近10倍的)

  方式一:

图片 1

  方式二:

图片 2


 

  •  扩展:

那么jdbc中的批处理的内部实现是不是采用方式二的形式来实现呢?感兴趣的朋友可以查看下该部分的源码...

  

http://www.bkjia.com/Mysql/1178068.htmlwww.bkjia.comtruehttp://www.bkjia.com/Mysql/1178068.htmlTechArticlemysql插入多条数据时间复杂度比较,mysql插入多条数据 SQL脚本 select * from users; 方式一: insert into users(name, age, course_id) VALUES("test",1, "0"); in...

  •  扩展:
  • 方式二:

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),
("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0")

图片 3

图片 4

insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");
insert into users(name, age, course_id) VALUES("test",1, "0");


那么jdbc中的批处理的内部实现是不是采用方式二的形式来实现呢?感兴趣的朋友可以查看下该部分的源码...

在插入上面24条数据的时候发现两者的执行效率相差比较大(近10倍的)

本文由金沙官网线上发布于数据库,转载请注明出处:mysql插入多条数据时间复杂度比较,mysql插入多条

您可能还会对下面的文章感兴趣: