MySQL—循环结构演练

演示案例:

1.没有添加循环控制语句
案例:批量插入,根据次数,插入到admin表中多条记录

create PROCEDURE pro_while1(in insertCount int)begin DECLARE i int DEFAULT 1; while i<insertCount DO insert into admin(username,`PASSWORD`) VALUES(concat(‘rose‘,i),‘666‘); set i=i+1; end while;end $

运行结果:

 

 这样就像数据库中插入了100条记录了

 

 

 

2.添加leave语句
案例:批量插入,根据次数插入到admin表中多条记录,如果次数>20则停止
注意:当中间要跳出的时候,就必须使用标签进行控制

 

create PROCEDURE test_while1(in insertCount int)begin DECLARE i int DEFAULT 1; a:while i<insertCount do insert into admin(username,`PASSWORD`) VALUES(concat(‘xiao‘,i),‘0000‘); if i>20 then leave a; end if; set i =i+1; end while a;end $

 

运行结果:

 

 

 

 

#3.添加iterate语句
#案例:批量插入,根据次数插入到admin表中多条记录,直插入偶数次

 

create PROCEDURE test_while2(in insertCount int)begin DECLARE i int DEFAULT 0; a:while i<insertCount do set i=i+1; if mod(i,2)!=0 then ITERATE a; end if; insert into admin(username,`PASSWORD`) VALUES(concat(‘wang‘,i),‘0000‘); end while a;end $

 

运行结果:

 

 

 

 

 

相关文章