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