1、while

语法:

  1. 【标签:】[可选] while 循环条件 do
  2. 循环体
  3. end while 【标签】;
  4. while 循环条件 do
  5. 循环体
  6. end while

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

drop procedure pro_while1$ #如果存在存储过程就先删除
create procedure pro_while1(in insertConut int)
begin
    declare i int default 1;
    while i<=insertConut Do
            insert into admin(username,`password`) values (concat('Rose',1),'666');
            set i=i+1;
        end while;
end $

call pro_while1(100)$

案例2
添加leave 语句
批量插入,根据次数插入到admin表中多条记录,如果次数>20则停止

drop procedure test_while1$ #如果存在存储过程就先删除
create proceduce test_while(in insertConut int)
begin 
    declare i int default 1;
    a:while i<=insertConut do
            insert into admin(username,`password`) value(concat('xiaohua',i),'0000');
            if i>=20 then leave a;
            end if;
            set i+i+1;
    end while a;
end $


call test_while1(100);

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

drop procedure test_while1$ #如果存在存储过程就先删除
create proceduce test_while(in insertConut int)
begin 
    declare i int default 1;
    a:while i<=insertConut do
            set i+i+1;
            if MOD(1,2)!=0 then iterate a;
            end if;
            insert into admin(username,`password`) value(concat('xiaohua',i),'0000');
    end while a;
end $


call test_while1(100);