欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mysql 循环插入10000条数据

程序员文章站 2022-03-06 14:36:39
...

前言:因为项目用user和data两张表,把user中的部分字段拆分到data中,这样两表都要通过user_id关联起来(作为两表主键),当注册新用户时只往use表写入了user_id,data表无法同时写入user_id,这样会导致用户无法修改资料。

一、所以,按自己想法,写个循环1W次随便插入数据测试:

DROP PROCEDURE IF EXISTS proc_initData;--如果存在此存储过程则删掉
DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i<=10000 DO
        INSERT INTO data(user_id) VALUES(i);
        SET i = i+1;
    END WHILE;
END $
CALL proc_initData();

 二、 执行过程:

Mysql 循环插入10000条数据1、第三行开始正式插入10000条数据,结果显示耗时 32.453秒

2、第四行验证插入是否成功,Mysql WorkBench限制只返回了1000条数据

Mysql 循环插入10000条数据

3、第五行验证1000条以外的数据是否插入成功,返回了1行 user_id = 5231,成功插入!

Mysql 循环插入10000条数据

三、Mysql有批量处理的方法,更省时

  preareStatement.addBatch();
  preareStatement.executeBatch();