接触mysql时间不长
你们在测试数据时,如果遇到向某表中插入大量数据用什么网上有很多方法,最常见的就是存储过程
但好多例子都是插入死值。
我遇到问题
举个例子:
 表1
  id  type  name value  date1  date2问题一:
value的值有(a1,a2,a3,a4,a5)
typede的值有(1,2,3)
问题二:
并且有个要求在 同一个时间段内(data1,date2)只能存在一种type
怎么解决?用存储过程  

解决方案 »

  1.   

    EXCEL中生成数据,然后用LOAD DATA 加载到数据库中。
      

  2.   

    不想自己写存储过程插收 就用sysbench
      

  3.   


    EXCEL怎么随机生成这些??? value的值有(a1,a2,a3,a4,a5)
    有顺序的还可以
    对于问题一一般怎么解决
    不会建个临时表存储a1,a2,a3,a4,a5 随机查询一个赋值
      

  4.   

    不知道是不是你想的 
    DELIMITER //  
     CREATE PROCEDURE proc()  
          begin 
          declare a int;
    declare b int;  
          set a=1;  
          set b=1;
    while 1 do
    set a=1;
    while a<6 do
    set b=1;
    while b<4 do
    insert into biao1(c,d) values(concat("a",a),concat("b",b));
    set b=b+1;
    end while;
    set a=a+1;
    end while;
    end while;
    end;  
    //  
    DELIMITER ; 这样的结果是:
    +------+------+
    | c    | d    |
    +------+------+
    | a1   | b1   |
    | a1   | b2   |
    | a1   | b3   |
    | a2   | b1   |
    | a2   | b2   |
    | a2   | b3   |
    | a3   | b1   |
    | a3   | b2   |
    | a3   | b3   |
    | a4   | b1   |
    | a4   | b2   |
    | a4   | b3   |
    | a5   | b1   |
    | a5   | b2   |
    | a5   | b3   |
      

  5.   

    能不能在存储过程中申明个ENUM或者set  随机获取里面的值   
      

  6.   

    EXCEL中有随机函数。
      

  7.   

    已解决(能保证测试,效率不是很高),1w条数据在半小时
     问题一.建附表 存type 随机获取一个type
     问题二.使用date_sub、date_add 获取当前时间减去一个随机的天数为开始时间,结束时间在开始时间上随机加一个随机天数。(没能保证在一个时间段内type唯一,但测试够用)
      

  8.   

    已解决(能保证测试,效率不是很高),1w条数据在半小时
     问题一.建附表 存type 随机获取一个type
     问题二.使用date_sub、date_add 获取当前时间减去一个随机的天数为开始时间,结束时间在开始时间上随机加一个随机天数。(没能保证在一个时间段内type唯一,但测试够用)
    上面写错了是10w