介绍
有时候需要测试性能,我们需要导入大量数据,在此,可以通过构建存储过程,传入数量参数,即可插入对应行数数据,内容如下:
建表
CREATE TABLE `user` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`code` VARCHAR(50) NOT NULL,
`name` VARCHAR(50) NOT NULL,
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=7
;
select count(1) from user;
结果如下:
建立存储过程
DELIMITER $
CREATE DEFINER=`root`@`localhost` PROCEDURE `batch_into_user`(
IN `count_num` INT
)
COMMENT '存储过程,用于批量插入,传入参数,插入该表'
begin
declare i int default 1;
while i<=count_num do
insert into user (id,code,name) values(i, concat('code_',i),concat('张大宝',i));
set i=i+1;
end while;
end$
调用存储过程插入一万数据,查询结果
call batch_into_user(10000);
select count(1) from user;