PHP菜鸟博客_共同学习分享PHP技术心得【PHP爱好者】
mysql数据库编写存储过程实现批量插入1000万条数据
2021-3-26 wangwenjie


第一步导入数据库表:



CREATE TABLE `test_use`  (

  `id` int(11) NOT NULL,

  `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL,

  `sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL,

  `age` int(11) NULL DEFAULT NULL,

  PRIMARY KEY (`id`) USING BTREE,

  UNIQUE INDEX `name`(`name`) USING BTREE

) ENGINE = MyISAM CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;

第二步创建存储过程:



DELIMITER $$


CREATE

    PROCEDURE `test_user`.`test_insert`(IN args INT)

      BEGIN

      DECLARE i INT DEFAULT 1;

      START TRANSACTION;

      WHILE i <=args DO

        INSERT INTO test_use(id,NAME,sex,age) VALUE(i,CONCAT("小王-",i),'男',22);

        SET i=i+1;

        END WHILE;

           COMMIT;

    END$$


DELIMITER ;



第三步调用生成插入1000万条记录:



最后执行:call test_insert(10000000); 即可



需要执行一段时间具体看电脑的性能而定



最终的查询生成的条数:



4.jpg



3.jpg

发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容