mysql如何插入一百万条数据

原文链接:这里

0.背景

mysql8.0+navicat

1.过程

依次执行下面3条sql语句。

CREATE TABLE `test` (
`id` int(7) NOT NULL AUTO_INCREMENT COMMENT '自增id',
`name` varchar(50) NOT NULL COMMENT '名称',
`pwd` varchar(50) NOT NULL COMMENT '密码',
`create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=10000 DEFAULT CHARSET=utf8 COMMENT='测试表';
DELIMITER $$ -- 写函数之前必须要写
 
CREATE FUNCTION test_data()
RETURNS INT DETERMINISTIC
BEGIN
DECLARE num INT DEFAULT 1000000;
DECLARE i INT DEFAULT 0;
WHILE i<num DO
INSERT INTO `test`(`name`,`pwd`)VALUES(CONCAT('用户',i),UUID());
SET i=i+1;
END WHILE;
RETURN i;
END $$
select test_data(); -- 执行函数

执行时间大概是 224.350s

posted on 2022-02-01 18:25  longkui  阅读(541)  评论(0编辑  收藏  举报

导航