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();

已经在插入数据了

相关推荐
Irene199139 分钟前
SQL 中日期的特殊性总结(格式符严格要求全大写)
sql
花椒技术2 小时前
从区间锁到行锁:一次高并发写入死锁治理实战
后端·sql
你觉得脆皮鸡好吃吗8 小时前
SQL注入 高权限注入(引入概念)
网络·数据库·sql·oracle·网络安全学习
untE EADO8 小时前
MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
android·sql·mysql
Irene19918 小时前
(课堂笔记)SQL基础语法分类总结表
数据库·sql
你觉得脆皮鸡好吃吗9 小时前
SQL注入 手工注入
网络·数据库·sql·安全·web安全·网络安全学习
m0_737539379 小时前
SQL语言续2
数据库·sql
在屏幕前出油10 小时前
08. ORM——快速开始
数据库·后端·python·sql·pycharm·orm
lzhdim10 小时前
SQL 入门 11:日期时间格式化、IF、CASE的使用
数据库·sql
上海云盾-小余10 小时前
Web 业务常见 SQL 注入攻击原理详解及 WAF 防护部署实战教程
前端·数据库·sql