用途:可以用来批量创建测试数据,工作中用的比较多
批量创建测试数据,通常有以下方法:
方法一: excel表格导入,不适合大批量数据;
方法二:存储过程实现,循环实现
方法三:写300条insert语句,一次批量执行
方法四:利用自动化测试工具 jmeter 批量执行插入
备注:一定要定义循环的控制变量: 让循环正常能够结束,否则会陷入死循环
例如:
给用户信息表一次性插入多条数据
笨办法:
SELECT * FROM user_tab;
INSERT INTO user_tab(user_id,user_name,email) VALUES(1001,'lily','lily@126.com');-user_id 主键
存储过程法:
注意:
user_id 是主键,不能重复,最好名字也不一样,邮箱也不一样,更符合实际情况(这时用到concat函数)
存储过程实现:
DROP PROCEDURE test005; 先删除同名存储过程
DELIMITER //
CREATE PROCEDURE test005()
BEGIN
DECLARE var1 INT(8); --定义申明变量是int类型
DECLARE name1 VARCHAR(30);
SET var1 = 1001; --给变量赋值
SET name1='lucy';
WHILE var1 <= 2000 DO
INSERT INTO user_tab(user_id,user_name,email) VALUES(var1,CONCAT(name1,var1),CONCAT(name1,var1,'@qq.com'));
SET var1=var1+1; --定义循环的控制变量,否则死循环
END WHILE;
END;
CALL test005(); --调用存过
SELECT * FROM user_tab; --查看确认是否将数据插入