mysql语句批量产生大量测试数据

CREATE TABLE `t_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`age` tinyint(4) DEFAULT NULL,
`create_time` datetime DEFAULT NULL,
`update_time` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DELIMITER $$ 默认情况下delimiter是分号,现在定义结束符为 $$。
DROP PROCEDURE IF EXISTS {procedure} 删除前先判断指定的表或者存储过程是否存在
CREATE PROCEDURE 创建存储过程
BEGIN 开始
DECLARE pre_name BIGINT; 定义prename为BIGINT型
DECLARE ageVal INT;
DECLARE i INT;
SET pre_name=187635267;
SET ageVal=100;
SET i=1;
WHILE i < 1000000 DO
INSERT INTO t_user(`name`,age,create_time,update_time) VALUES(CONCAT(pre_name,'@qq.com'),(ageVal+1)%30,NOW(),NOW());
SET pre_name=pre_name+100;
SET i=i+1;
END WHILE;
END $$

delimiter ;
call proc_batch_insert();调用定义的函数

posted @ 2017-11-05 20:45  在下小白  阅读(439)  评论(0编辑  收藏  举报