Redis事务,MySQL事件的使用

 2023-09-23 阅读 20 评论 0

摘要:事件,像闹钟,每隔一段事件就会执行,循环执行的事件我把它理解成定时器 studyinfo表数据: Redis事务, 事件的创建 语法 # 语法 DELIMITER $ CREATE EVENT [IF NOT EXISTS] event_name # 创建事件[如果存在] ON SCHEDULE SCHEDULE # 执行的时间和

事件,像闹钟,每隔一段事件就会执行,循环执行的事件我把它理解成定时器

studyinfo表数据:

Redis事务,

 

事件的创建

语法

# 语法
DELIMITER $
CREATE EVENT [IF NOT EXISTS] event_name 	# 创建事件[如果存在]
ON SCHEDULE SCHEDULE				        # 执行的时间和间隔
[ON COMPLETION (NOT) PRESERVE]			    # [是(否)循环执行]
[ENABLE | DISABLE | DISABLE ON SLAVE]		# [活动的事件(默认) | 关闭的事件 | 在从机中是关闭]
[COMMENT '注释']				            # [定义事件的注释]
DO BEGIN                                    # sql语句集开始[要执行的sql语句]                        # 定时执行的sql语句
END$                                        # sql语句集结束
DELIMITER ;

一些常用的时间间隔设置: 

# 一些常用的时间间隔设置:
# (1)每隔5秒钟执行
ON SCHEDULE EVERY 5 SECOND# (2)每隔1分钟执行
ON SCHEDULE EVERY 1 MINUTE# (3)每天凌晨1点执行
ON SCHEDULE EVERY 1 DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)# (4)每个月的第一天凌晨1点执行
ON SCHEDULE EVERY 1 MONTH STARTS DATE_ADD(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY),INTERVAL 1 MONTH),INTERVAL 1 HOUR)# (5)每 3 个月,从现在起一周后开始
ON SCHEDULE EVERY 3 MONTH STARTS CURRENT_TIMESTAMP + 1 WEEK# (6)每十二个小时,从现在起三十分钟后开始,并于现在起四个星期后结束
ON SCHEDULE EVERY 12 HOUR STARTS CURRENT_TIMESTAMP + INTERVAL 30 MINUTE ENDS CURRENT_TIMESTAMP + INTERVAL 4 WEEK

# 参数说明:

timestamp          # 表示一个具体的时间点,后面加上一个时间间隔,表示在这个时间间隔后事件发生。

mysql怎样使用?EVERY子句       #  用于表示事件在指定时间区间内每隔多长时间发生一次,其中 SELECT子句用于指定开始时间;ENDS子句用于指定结束时间。

interval              #  表示一个从现在开始的时间,其值由一个数值和单位构成。例如,使用“4 WEEK”表示4周;使用“‘1:10’ HOUR_MINUTE”表示1小时10分钟。间隔的距离用DATE_ADD()函数来支配。

 

 创建事件

DELIMITER $
CREATE EVENT IF NOT EXISTS eve1		# 创建事件
ON SCHEDULE EVERY 5 SECOND 		    # 每隔5秒钟执行
ON COMPLETION PRESERVE			    # 循环执行
COMMENT '定时添加学生信息'		    # 注释
DO BEGIN				            # sql语句开始INSERT INTO studentInfo(student_name,create_time) VALUES('晴泪',NOW());
END$					            # sql语句结束
DELIMITER ;
# 过一会查询
SELECT * FROM studentinfo;

 

MySQL入门。 

调度器的开关以及查看状态

# 开启事件调度器
SET GLOBAL event_scheduler = ON;# 关闭事件调度器
SET GLOBAL event_scheduler = OFF;# 查看事件调度器状态
SHOW VARIABLES LIKE 'event_scheduler';

 

事件的删除

#删除事件语法
DROP EVENT IF EXISTS 事件名;

修改事件

#修改事件
DELIMITER $
ALTER EVENT [IF NOT EXISTS] event_name		# 修改事件[如果存在]	ON SCHEDULE SCHEDULE			        # 执行的时间和间隔[ON COMPLETION [NOT] PRESERVE]		    # 循环执行[ENABLE | DISABLE | DISABLE ON SLAVE]	# [活动的事件(默认) | 关闭的事件 | 事件在从机中是关闭的][COMMENT '注释']			            # [定义事件的注释]DO BEGIN				                # 要执行的sql语句集开始[要执行的sql语句]END$					                # 要执行的sql语句集结束
DELIMITER ;

事件的查询

#查询事件
SELECT * FROM information_schema.events; 

MySQL基本使用、

打卡第17天,欢迎对数据感兴趣的朋友一起讨论、交流,请多指教!

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/92325.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息