使用 MySQL 循环插入N条(如100条)数据,我们可以定义一个存储过程,然后调用即可。
1、先创建一张数据库表 t_user 用户表:
drop table if exists t_user;
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
2、创建存储过程:
delimiter $$ # 定义结束符
drop procedure if exists addTestData; # 存储过程名叫:addTestData
create procedure addTestData()
begin
declare number int;
set number = 1;
while number <= 100 #插入N条数据
do
insert into t_user(id,user_name)
values(null,concat('姓名_',number)); # 为了区分姓名,我们加上后缀
set number = number + 1;
end
while;
end $$;
执行结果:
3、调用存储过程(大概执行几秒钟):
call addTestData();
4、查询数据:
select * from t_user;
查询结果:
搞定。