SQL之使用存储过程循环插入数据

1、已经创建了任务日志表

CREATE TABLE `t_task_log` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `task_id` bigint NOT NULL COMMENT '任务ID',
  `read_time` bigint NOT NULL COMMENT '单位秒,读取耗时',
  `write_time` bigint NOT NULL COMMENT '单位秒,写入耗时',
  `read_size` bigint NOT NULL COMMENT '读取记录数,单位条',
  `write_size` bigint NOT NULL COMMENT '写入记录数,单位条',
  `status` int NOT NULL COMMENT '0表示执行中,1表示执行失败,2表示执行成功',
  `created_by` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
  `created_datetime` datetime NOT NULL,
  `last_updated_by` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
  `last_updated_datetime` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=485521 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

2、创建存储过程

DROP PROCEDURE loopAddLog;
 
CREATE PROCEDURE loopAddLog()
begin
declare i int;
set i = 1;
repeat
	INSERT INTO hmblogs.t_task_log
	(task_id, read_time, write_time, read_size, write_size, status, created_by, created_datetime, last_updated_by, last_updated_datetime)
	VALUES(i, 10, 10, 100000, 100000, i%3, 'admin', now(), 'admin', now());
    set i = i + 1;
until i >= 100000000
end repeat;


end

3、执行存储过程

call loopAddLog();

已经在插入数据了

相关推荐
小纯洁w30 分钟前
MySQL 中优化 SQL 语句以提高查询性能
数据库·sql·mysql
xiaomiphone931 分钟前
【PostgreSQL教程】PostgreSQL详细介绍
数据库·sql·mysql·postgresql·oracle
Kk.6163 小时前
SQL编程题复习(24/9/20)
数据库·sql·pta考试·专本贯通
2401_864476934 小时前
无线领夹麦克风哪个降噪好?一文搞懂麦克风什么牌子的音质效果好
javascript·git·sql·github·mssql
丶重明6 小时前
【2024】MySQL账户管理
sql
Deryck_德瑞克8 小时前
mysql笔记—sql性能分析
笔记·sql·mysql
知识分享小能手17 小时前
mysql学习教程,从入门到精通,SQL DISTINCT 子句 (16)
大数据·开发语言·sql·学习·mysql·数据分析·数据库开发
NaZiMeKiY1 天前
SQLServer数据分页
数据库·sql·sqlserver
码爸1 天前
java 执行es中的sql
java·sql·elasticsearch
中文很快乐1 天前
springboot结合p6spy进行SQL监控
java·数据库·sql