怎样在mysql中插入上万条测试数据

怎样在mysql中插入上万条测试数据

1.创建名为student表
id为主键并自增

CREATE TABLE student (
  id INT (11) PRIMARY KEY NOT NULL AUTO_INCREMENT,#id设为主键并自增
  sid VARCHAR (50),
  age INT (11),
  NAME VARCHAR (50),
  class VARCHAR (50)
);

2.建立存储过程,存储过程名为test ()
(1).简单存储过程(主要执行语句,建议用(2)的方法)

DELIMITER //                                   
CREATE PROCEDURE test (INOUT s INT)
BEGIN
  DECLARE i INT;
  SET i = 0;
  REPEAT
    #插入数据库的数据,请记得改成你想要的插入语句
     INSERT INTO student (NAME, age, sid, class)
    VALUES
      ('name', 20,12000, 20210302 );
    SET i = i + 1;
    UNTIL i >= s
  END REPEAT;
END //

(2).加入随机名字,学号等存储过程

DELIMITER //                                   
CREATE PROCEDURE test (INOUT s INT)
BEGIN
  DECLARE i INT;
  SET i = 0;
  REPEAT
    #随机产生姓氏
     SET @xing = '赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅皮';
    SET @xing1 = SUBSTRING(@xing, FLOOR(RAND() * 85), 1);
    #随机产生名1
     SET @m1 = ' 洋泽雨哲瀚胤运佑运允晨运恒运发云天耘志耘涛振荣振翱中震子辰晗昱瀚玥瀚昂瀚彭景行景中景逸景彰绍晖文曦哲永昌子昂智宇智晖晗日晗昱瀚昂昊硕昊磊昊东鸿晖绍晖文昂文景曦哲永昌子昂智宇';
    SET @ming1 = SUBSTRING(@m1, FLOOR(RAND() * 87), 1);
    #随机产生名2
     SET @m2 = '文曦哲永昌子昂智宇智晖晗日晗昱瀚昂昊硕昊磊昊东鸿晖绍晖文昂文景曦哲永昌子昂智宇 洋泽雨哲瀚胤运佑运允晨运恒运发云天耘志耘涛振荣振翱中震子辰晗昱瀚玥瀚昂瀚彭景行景中景逸景彰绍晖';
    SET @ming2 = SUBSTRING(@m2, FLOOR(RAND() * 87), 1);
    #结合形成完整民称
     SET @name1 = CONCAT(@xing1, @ming1, @ming2);
    #随机生成入学年份、班级
     SET @class1 = CONCAT(
      1,
      FLOOR(10 + RAND() * 89),
      FLOOR(2010 + RAND() * 11),
      FLOOR(10 + RAND() * 20)
    );
    #随机生成sid号
     SET @sid1 = CONCAT(
      '150',
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9),
      FLOOR(RAND() * 9)
    );
    #插入数据库
     INSERT INTO student (NAME, age, sid, class)
    VALUES
      (
        @name1,
        FLOOR(18 + RAND() * 8),
        @sid1,
        @class1
      );
    SET i = i + 1;
    UNTIL i >= s
  END REPEAT;
END //

3.调用存储过程

SET @s=10;  #输入想要插入数据的条数                               
CALL test(@s); 

插入10万条数据用时
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值