瞬间写入一百万 mysql_MySQL创建Users 表并在表中一次插入一百万条数据(用存储过程插入)。...

本文介绍了如何使用MySQL存储过程一次性插入一百万条数据到Users表中,通过两种不同的while循环实现方式,包括单个循环和双重循环,详细展示了创建存储过程和调用的过程。
摘要由CSDN通过智能技术生成

用存储结构向表中一次插入一百万条数据

首先创建Users表,写存储过程用while循环插入数据。(concat()函数链接两个字符串)

1.第一种(我只用了一个while循环,等待时间长)

创建Users表:

代码:

7f44f4da1325d25b8eba2ce485a85f51.png

写存储过程:

代码:

delimiter $$

drop procedure if exists Pro_insert $$

create procedure Pro_insert(in loop_times int)

begin

set @counts = 1;

while @counts = 1 do

insert into Users values (null,concat('UserName',@counts),23,0,concat('tele',@counts),concat('Email',@counts),concat('23423435',@counts));

set @counts = @counts + 1;

end while;

end $$

delimiter ;

调用:

call Pro_insert(1000000);

2.第二种(用两个while分拨插入,会比较快一点)

delimiter $$

Drop procedure if exists insert_infor $$

create procedure insert_infor(in n int,in c int)

BEGIN

set @num=1,@counts=1;

while @num <= n do

while @counts <=c do

insert into Users values (null,concat('UserName',@counts),23,0,concat('tele',@counts),concat('Email',@counts),concat('23423435',@counts));

set @counts = @counts + 1;

end while;

set @counts=1;    #一定要把@counts置为1,否则内层while只循环一次。

set @num = @num + 1;

end while;

END $$

delimiter ;

调用:

call insert_infor(1000,1000);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值