1. 程式人生 > mysql教程 > Mysql 迴圈插入10000條資料

Mysql 迴圈插入10000條資料

前言:因為專案用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();

 二、 執行過程:

1、第三行開始正式插入10000條資料,結果顯示耗時 32.453秒

2、第四行驗證插入是否成功,Mysql WorkBench限制只返回了1000條資料

3、第五行驗證1000條以外的資料是否插入成功,返回了1行 user_id = 5231,成功插入!

三、Mysql有批量處理的方法,更省時

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