表结构及原表数据如下 : select * from u_user;
利用mysql 存储过程批量往表中插入一千条数据
创建存储过程
delimiter $$
create procedure fill_datak() #创建一个存储过程并定义存储过程的名字
begin #开始存储过程
set @i =1000000; #定义变量
while @i<=6000000 do #循环变量小于1000
insert into u_user (u_name,u_age,u_sex,u_is_delete)values(CONCAT("u_name_",@i),(SELECT RAND() * 20),(SELECT RAND() * 2),(SELECT RAND() * 1));
#CONCAT为拼接字符串
set @i = @i+1;
end while;
end $$ #结束存储过程
delimiter; #将mysql的存储过程设置为 ;
查看创建的存储过程
show create procedure fill_data -- 查看存储过程
执行存储过程
call fill_data(); -- 调用存储过程