|
有些情况需要在表里面创建N多数据,因为生产环境和测试环境的压测数据不匹配,猜测是生产的数据量跟测试环境的数据量不一致导致的,需要排查是否是数据量的问题,因此要在测试环境涉及的表创建N多数据,只需要保证数据量级而不影响应用数据库查询,我这里的话打算使用数据库存储过程造数据。但是一下子也不会写存储过程,网上匆匆忙忙找了个Demo,这里记录一下,争取以后自己写存储过程!
- CREATE PROCEDURE myGenerator(in code varchar(64), in inr int)
- -- 定义变量
- BEGIN
- DECLARE i INT DEFAULT 0;
- DECLARE p_telphone VARCHAR(20);
- DECLARE p_username VARCHAR(20);
- DECLARE p_authcode VARCHAR(20);
- DECLARE p_card VARCHAR(20);
- DECLARE p_password VARCHAR(20);
-
- WHILE i < inr DO
- -- 对参数赋值
- SET p_telphone = CONCAT('15410',i);
- SET p_username = CONCAT('张',i);
- SET p_authcode = CONCAT('',i);
- SET p_card = CONCAT('SN000',i);
- SET p_password = CONCAT('hnjb',i);
- -- 创建数据
- INSERT INTO user ( telphone, username, authcode, card, password ) VALUES ( p_telphone, p_username, p_authcode, p_card, p_password );
- SET i=i+1;
- END WHILE;
- END
- -- 调用存储过程
- call myGenerator("SN002-", 10000);
复制代码
|
|