快速生成大量测试数据
创建数据表
sql
drop table if exists `table_name`;
CREATE TABLE `table_name`(
id int NOT NULL AUTO_INCREMENT PRIMARY KEY comment '主键',
user_id tinyint not null comment '用户id',
user_name varchar(30) comment '用户名称',
created_at datetime not null comment '创建时间',
updated_at datetime comment '修改时间'
) comment '数据表名称';插入第一条数据
sql
insert into `table_name` values(1, 1, 'user_1', Now(), Now());读取当前表 table_name 的数据,并批量插入
sql
set @i=(select MAX(id) from `table_name`);
insert into `table_name`(id, user_id, user_name, created_at, updated_at)
select @i:=@i+1,
left(rand()*10,1) as user_id,
concat('user_',@i%2048),
date_add(created_at, interval + @i*cast(rand()*100 as signed) SECOND),
date_add(date_add(updated_at, interval + @i*cast(rand()*100 as signed) SECOND), interval + cast(rand()*1000000 as signed) SECOND)
from `table_name`;查看最大ID
sql
select MAX(id) from `table_name`;