性能测试需求测试删除接口时需要准备大量数据或者逻辑删除。考虑到服务已经发布,不想再次重新打包发布等操作,直接添加数据库数据。
直接上sql
-- 创建存储过程
DELIMITER $$
CREATE PROCEDURE InsertEmptyData()
BEGIN
DECLARE i INT DEFAULT 0;
SET autocommit = 0;
WHILE i < 100 DO -- 100批,每批1万行
SET @sql = CONCAT('INSERT INTO test () VALUES ',
REPEAT('(),', 9999), '()'); -- 1万行
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET i = i + 1;
COMMIT; -- 每批提交一次
END WHILE;
SET autocommit = 1;
END$$
DELIMITER ;
-- 执行存储过程
CALL InsertEmptyData();
上面表名称需要修改成自己的表名,这个存储过程只会添加空数据,如果字段不允许为空记得添加默认值,并且id为自增主键,没有其他外键与索引。