【MySQL】批量插入数据造数-存储过程
日常工作中可能有针对需要对某个表进行造数,如何批量插入呢?
可以使用存储过程循环结构。下面是一个存储过程以插入100条,while语句后的<=控制循环次数。
concat是一个拼接语句,拼接后是test_1-100,这种也适用于ID/name唯一的情况。
CREATE PROCEDURE insert_data()
BEGINDECLARE counter INT DEFAULT 1;WHILE counter <= 100 DOSET @name = CONCAT('test_', counter);INSERT INTO table1 (name) VALUES (@name);SET counter = counter + 1;END WHILE;
END#调用存储过程
CALL insert_data();
调用后就会插入100条,具体可以替换insert语句,或者其他语句也是可以。
#查看存储过程
show create procedure insert_data;#删除
drop procedure if exists insert_data;