MySQL存储过程删数据,mysql 使用定时任务调用存储过程删除老数据

news/2024/7/4 0:57:20

前言:由于项目需要,现需要做一个定时清理mysql老数据的功能。经再三考虑,决定通过调用数据库的存储过程来执行删除数据的任务,然后创建一个事件来定时调用存储过程。

实现前提

需要删除数据的表里必须有个字段,类型为date或datetime,用于记录该数据的生成时间。

编写存储过程

编写删除语句:

DELETE FROM test t WHERE t.createDate < DATE_SUB(CURDATE(),INTERVAL 5 DAY);

上面sql表示删除五天之前的老数据。编写后需要确认是否可以使用。

CURDATE() :时间函数,表示返回当前日期

createDate:table的字段,表示该行数据的创建时间(类型为date或datetime)

DATE_SUB(end_date,INTERVAL expr unit):表示的隔了多少单位之前的日期

如果是需要查之后的日期,可以使用DATE_ADD(start_date,INTERVAL expr unit)函数,两个函数查询结果相反,一个往前查日期,一个往后查日期

unit的取值主要有SECOND(秒)、MINUTE(分)、HOUR(时)、DAY(天)、MONTH(月)、YEAR(年)

定义将sql保存为存储过程:

CREATE PROCEDURE delete_data()

BEGIN

DELETE FROM test t WHERE t.createDate < DATE_SUB(CURDATE(),INTERVAL 5 DAY);

END

注意,存储过程是在cmd命令行上写的,则需要使用DELIMITER命令定义分割符,如果是navicat则不用

查看存储过程:

select * from mysql.proc where db=’数据库名’;

使用存储过程 :

call delete_data()

开启事件调度器:

SET GLOBAL event_scheduler = ON;

创建定时任务的事件:

create event del_event

on schedule

EVERY 1 DAY

STARTS '2020-3-28 00:00:00'

do call delete_data()

表示从2020-3-28零点开始,每隔一天执行del_data存储过程


http://www.niftyadmin.cn/n/4390459.html

相关文章

华为路由器接口如何区分_华为路由的线路输出的两种不同方法简介

华为路由的线路输出的两种不同方法简介发布时间&#xff1a;2012-12-12 11:42:09 作者&#xff1a;佚名 我要评论对于路由器而言&#xff0c;我们可以根据不同的情况来采用不同的出口方式&#xff0c;尤其是在一些高端路由组成的网络环境中&#xff0c;我们更是需要设置好…

display隐藏与显示

2019独角兽企业重金招聘Python工程师标准>>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xhtml"&…

下周,特斯拉新版本Autopilot 即将推出

CEO伊隆马斯克又通过其最爱的Twitter透露了这一最新消息。 近日&#xff0c;特斯拉CEO伊隆马斯克最近又在Twitter上爆料&#xff0c;公司将于12月最后一周推出最新的自动驾驶软件。他在Twitter上写到&#xff1a;“看起来我们已经做好了在下周为 HW2 推出大部分 Autopilot 功能…

【转载】深度学习中的遥感影像数据集~持续更新

强烈吹爆这篇blog 非常感谢博主分享 有很多国外资料 我查了好久也没找到 终于找到博主 感恩&#xff01; 内容很全了 数据集无论大小和新旧 都有 绝对值得收藏&#xff01; 赶紧分享给关注了我的小伙伴 &#xff01; https://blog.csdn.net/nominior/article/details…

luogu2402 奶牛隐藏

题目描述 在一个农场里有n块田地。某天下午&#xff0c;有一群牛在田地里吃草&#xff0c;他们分散在农场的诸多田地上&#xff0c;农场由m条无向的路连接&#xff0c;每条路有不同的长度。 突然&#xff0c;天降大雨&#xff0c;奶牛们非常混乱&#xff0c;想要快点去躲雨。已…

mysql注入内置函数,mysql注入内置函数

a. 原理由于load_file()函数相当于*nix中的cat函数,而在某些FreeBSD,Sunos系统中用cat / 命令可以列出根目录,而字符/ 的Ascii码是47,所以在MYSQL注入的时候......SQL注入常用_计算机软件及应用_IT/计算机_专业资料。MYSQL: MYSQL注释符: 上午插入记录的时候一直没有成功,郁闷不…

聊一聊JWT与session

前言 认证和授权&#xff0c;其实吧简单来说就是:认证就是让服务器知道你是谁&#xff0c;授权就是服务器让你知道你什么能干&#xff0c;什么不能干&#xff0c;认证授权俩种方式&#xff1a;Session-Cookie与JWT&#xff0c;下面我们就针对这两种方案就行阐述。 Session 工作…

Top-1 accuracy和Top-5 accuracy的概念及理解

官方解释&#xff0c;也是我所查到了的最多的解释 top-1 就是你预测的label取最后概率向量里面最大的那一个作为预测结果&#xff0c;如果你的预测结果中概率最大的那个分类正确&#xff0c;则预测正确。否则预测错误 top-5 就是最后概率向量最大的前五名中&#xff0c;只要…