不管是在做并发测试还是大数据的压力测试时,我们都需要造很多的用户或者记录数据,经常就需要用到往数据库批量插入数据,以满足测试需求。

以下实例使用的是mysql数据库,客户端为Navicat

1.选择需要操作的数据库实例mytest,选中函数,右键-新建函数,选择过程,点击完成即可。(注意不是新建查询,而是新建函数)

2.本案例中我需要造1000条用户数据,用户数据相关联的表有两个,account和customer表,两个表均有数据并且能匹配上的话则新建的用户可以正常使用。

首先分别找到这两个表,右键,设计表,找到该表的非null字段,以及测试数据需要用到的字段,其他的字段则可以为空,不需要填写。

按以下语法及格式在新建的函数过程中输入,保存后点击运行即可。

批量增加account表的数据

begin
    declare i int;
    set i=1;
    while i<1001 do
        insert INTO account(`Id`,`Name`,`memberId`,`customerId`,`createTime`) values('1992222'+i,'19911110000'+i,'100'+i,400222000+i,'2018-08-21 00:00:00');
        set i=i+1;
     end while;
    end

批量增加customer表的数据

begin
    declare j int;
    set j=1;
    while j<1001 do
        insert INTO customer(`customerId`,`name`,`createTime`) values('400222000'+j,'测试','2018-08-21 00:00:00');
        set j=j+1;
     end while;
    end

具体的insert值根据测试需求来更改,如果使用的是其他的数据库,语法上也有差异,需要自行调整修改。

Logo

更多推荐