mysql while循环和添加循环控制条件案例

红太狼 2021-07-24 13:11 542阅读 0赞
  1. **案例:批量插入,根据次数插入到admin表中**
  2. DELIMITER $
  3. CREATE PROCEDURE pp(IN insertCount INT)
  4. BEGIN
  5. DECLARE i INT DEFAULT 1;
  6. WHILE i<=insertCount DO
  7. INSERT INTO admin(username,`password`) VALUES(CONCAT('rose',i),'666');
  8. SET i=i+1;
  9. END WHILE ;
  10. END $
  11. CALL pp(10)$
  12. **案例:批量插入,根据次数插入到admin表中如果次数大于20则停止(添上循环控制语句leave)**
  13. CREATE PROCEDURE pp2(IN insertCount INT)
  14. BEGIN
  15. DECLARE i INT DEFAULT 1;
  16. a:WHILE i<=insertCount DO
  17. INSERT INTO admin(username,`password`) VALUES(CONCAT('rose',i),'666');
  18. IF i>=20 THEN LEAVE a;
  19. END IF;
  20. SET i=i+1;
  21. END WHILE a;
  22. END $
  23. CALL pp2(30)$
  24. **案例:批量插入,根据次数插入到admin表中,只插入偶数次(添上循环控制语句iterate)**
  25. CREATE PROCEDURE pp3(IN insertCount INT)
  26. BEGIN
  27. DECLARE i INT DEFAULT 0;
  28. a:WHILE i<=insertCount DO
  29. SET i=i+1; #放这,使得iterate对次数无影响
  30. IF MOD(i,2)!=0 THEN ITERATE a;
  31. END IF;
  32. INSERT INTO admin(username,`password`) VALUES(CONCAT('rose',i),'666');
  33. END WHILE a;
  34. END $
  35. CALL pp3(30)$

发表评论

表情:
评论列表 (有 0 条评论,542人围观)

还没有评论,来说两句吧...

相关阅读