MySQL存储过程批量插入百万条数据

最近在做一个项目,需要批量插入一批数据(ps:随机的),试想了一下,就想用mysql的存储过程试下,因为是在个人本机测试的,可能插入的过百秒

现在说下批量创建100万条数据

第一步:创建存储过程:

delimiter $$

create procedure multiInsertM(in args int)

begin

declare i int default 100001;

start transaction; #开启事务

while i

insert into member(id,username,mobile,email,age,created_at)

values(i, concat("张天爱-", i), 18827236292, concat("tianai", i, "@sina.com"), 30, now());

set i = i+1;

end while;

commit;

end $$

delimiter;

第二步:显示创建的存储过程:show procedure status

上图就是刚刚创建的存储过程。

第三步:执行存储过程 call multiInsertM(1000000)

select 查询刚刚执行的存储过程的结果(个人删除了一个记录)

个人对存储过程的理解:

-- 存储过程:

-- 包含一系列sql语句的集合,完成一个复杂的功能

-- 反复调用,效率非常高

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200403A0SCWE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券