-- 查看带有xxx字段的所有表
-- SELECT table_name FROM information_schema.columns WHERE column_name='xxx';
-- 查看事件调度器状态
SHOW VARIABLES LIKE 'event_scheduler';
-- 开启事件调度器
SET GLOBAL event_scheduler = ON;
-- 关闭事件调度器
-- SET GLOBAL event_scheduler = OFF;
-- SHOW VARIABLES LIKE 'event_scheduler';
-- SELECT @@event_scheduler;
-- SHOW PROCESSLIST;
CREATE PROCEDURE updateAndDelete()
begin
-- ALTER TABLE 表名 ADD `列名` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除 0未删 1删除' AFTER operator;
ALTER TABLE 表名 DROP 列名;
-- end 要加分号 或者用END$$ 或者用DELIMITER //语法
END;
-- call updateAndDelete();
DROP EVENT IF EXISTS event_update;
-- create event event_update if not exists event_update
create event event_update
on schedule every 60 second STARTS curdate() -- 设置60秒执行一次
-- on schedule EVERY 1 DAY STARTS date_add(date( ADDDATE(curdate(),1)),interval 3 hour) -- 每天凌晨3点进行
on completion preserve -- 保证event可重复执行 否则执行完一次就被删了
do call updateAndDelete(); -- 执行insert_monitor()存储过程
MYSQL存储过程 定时任务 一些记录
最新推荐文章于 2024-09-26 08:00:00 发布
这篇博客探讨了如何使用SQL查询来查找包含特定字段的表,并展示了如何管理事件调度器以执行定期的数据更新任务。通过创建存储过程和事件,可以实现每60秒自动更新和删除表中的列。这涉及到了数据库维护、SQL操作以及自动化流程的实施。
摘要由CSDN通过智能技术生成