有时因为测试需求,需要给某数据表中插入多行数据,所以自己就琢磨了一下,该过程实现涉及到了MySQL存储过程,想详细了解的可看下这个博客:MySQL存储过程,以下是具体的实现过程:
1、先创建一个表:
create table table_name(
id char(50) not null,
num char(50) not null
);
2、创建存储过程:MySQL中给数据表插入多行数据用到了MySQL存储过程中的控制语句—循环语句 WHILE-DO…END-WHILE(当然可以用其他语句,我目前只试了这个语句):
运行下面代码:
DELIMITER ;; //注意DELIMITER后有个空格
CREATE PROCEDURE test() //创建存储过程,名为test(可随意取名)
BEGIN
DECLARE Y INT;
set Y=1;
WHILE Y<20 //添加19行数据
DO
INSERT INTO table_name(id,num) values(Y,Y); //给表名为table_name的行id,num添加数据
SET Y=Y+1;
END WHILE ;
COMMIT;
END;; //存储成功
call test; //用call命令调用存储
3、查看添加数据是否成功:
desc table_name;
select * from table_name;
在命令窗口查看表名为table_name中数据如下所示:
OK,给数据表中插入多行数据成功。
当然,如果想在序号前加上字符串时,可以将代码第8行做如下更改:
INSERT INTO table_name(id,num) values(concat('T-',Y),concat('S-',Y));
运行代码,查看插入数据如下:
OK,插入多行数据成功。