成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySOL中Event用法詳解,零基礎快速入門必看

數據庫 MySQL
Event即事件,也是一種數據庫對象,又叫時間觸發器或者事件調度器.

一、Event概念

Event即事件,也是一種數據庫對象,又叫時間觸發器或者事件調度器,與triggers的事件觸發不同,tiggers會因為update、delete、insert等事件觸發,而event類似與linux crontab計劃任務,用于時間觸發,當到了設定執行時間時,系統會觸發相關的SQL語句或存儲過程,相當于我們給存儲過程創建了定時任務。

▲ 適用范圍:對于每隔一段時間就有固定需求的操作,如創建表,刪除數據、插入數據,修改數據等操作,可以使用event來處理。

▲ 例如:在每月的1日凌晨1點自動創建下個月需要使用的三張表;在每月第一天時查詢匯總上月商品的銷售匯總信息,然后將這些信息插入到匯總信息表里。這些情況都可以使用event來處理。

二、Event創建語法

CREATE Event [IF NOT EXISTS] event_name -- 創建使用create event

ON SCHEDULE schedule -- on schedule 什么時候來執行,執行頻率

[ON COMPLETION [NOT] PRESERVE] -- 調度計劃執行完成后是否還保留

[ENABLE | DISABLE] -- 是否開啟事件,默認開啟

[COMMENT 'comment'] -- 事件的注釋

DO event_body; -- 這個調度計劃要做什么?

創建語法中[ ]里的內容是可以省略的。

[IF NOT EXISTS]如果新建的event_name系統里不存在,則創建一個新的,如果已經存在了,則提示已經存在。如果省略的話,系統里不存在新的event_name則創建成功,如果已經存在了,會保存。

[ON COMPLETION [NOT] PRESERVE 如果帶了not當事件執行完后,就自動刪除,不保留事件。如果不加not事件執行完會保留下來,該項不寫的時候,默認是執行完事件保留下來。

[ENABLE | DISABLE]ENABLE時事件開啟,當到了事件執行時間,系統會自動執行event_body里定義的語句,如果設置的是DiSABLE則事件關閉,到了執行時間,事件也不會執行。該項沒有設置時,默認為事件開啟。

[COMMENT 'comment']comment是事件注釋,對事件進行解釋說明。

event_body事件主體,可以是單條DML語句,可以是多條DML語句,多條時需要寫在begin……end之間,也可調用存儲過程。

三、執行時間說明

執行時間說明:

1.單次計劃:

在2019年2月1日4點執行一次

on schedule at '2019-02-01 04:00:00’

2. 重復計劃

on schedule every 1 second 每秒執行一次

on schedule every 1 minute 每分鐘執行一次

也可以是hour、day、week、month、year

3.指定開始時間的重復計劃

每天在20:00:00執行一次

on schedule every 1 day starts ‘2021-6-16 20:00:00'

四、如何查看Event

● 查看有哪些event

Show events; 或者通過Select * from information_schema.events;

● 查看event具體內容

SHOW CREATE EVENT event_name1;

● 刪除event

DROP EVENT event_name;

● 修改event

可以先刪除,再重新創建
也可以ALTER EVENT event_name …… 省略號后邊的內容和創建event一樣

五、實例

先創建一個表student_bak,用此表來備份student表的數據;

create table student_bak select * from student;

接著,我們創建存儲過程student_bak_pro,用來備份student表中的最新數據

CREATE DEFINER=`root`@`localhost` PROCEDURE `student_bak_pro`()
BEGIN
insert into student_bak select * from student t where not EXISTS (select * from student_bak t1 where t1.sno=t.sno);
COMMIT;
END

然后,我們再創建event,讓系統每3秒自動執行以下存儲過程student_bak_pro

CREATE Event student_bak_event
ON SCHEDULE every 3 second
ON COMPLETION PRESERVE
DO call student_bak_pro();

最后,我們給student表新插入三條條數據,然后我們去觀察student_bak表里數是不是也插入了最新的數據。

INSERT INTO student VALUES (2008063, 'Penqun63', '男', 12, '2009-02-24', NULL)(2008064, 'Penqun63', '男', 12, '2009-02-24', NULL),
(2008065, 'Penqun65', '男', 12, '2009-02-24', NULL);
責任編輯:姜華 來源: 今日頭條
相關推薦

2021-03-23 17:21:48

Java編程開發

2021-03-11 11:50:07

kafka服務器Java

2017-09-18 10:48:06

深度學習零基礎入門

2020-04-28 10:40:54

Python開發工具

2024-01-16 08:09:28

PythonMongoDB數據存儲

2009-11-18 14:53:59

PHP Session

2024-12-06 10:51:10

Hadoop大數據框架

2017-09-21 15:31:49

2016-11-25 13:05:18

2022-03-15 09:31:17

ESLint工作原理前端

2012-02-22 10:33:36

Wi-Fi

2021-08-27 07:13:52

UI計算機圖形

2011-07-29 11:28:58

iPhone開發

2020-06-10 10:50:48

C++開發編程

2021-04-30 11:33:09

Python變量數據

2020-04-09 14:02:33

NginxHttps前端

2025-02-17 10:09:54

2024-05-16 09:26:11

PythonpyWinAuto工具

2025-02-17 13:00:00

ChatGPT大模型AI

2020-11-20 09:36:43

Java對象
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: ww 255hh 在线观看 | 亚洲在线免费 | 91免费视频| 欧美一区精品 | 成人在线中文字幕 | 欧美色图综合网 | 免费播放一级片 | 日日操操操 | 99久久久久久久久 | 亚洲综合在线网 | 亚洲欧洲综合av | av黄色在线| 成人免费观看视频 | 亚洲精品福利在线 | 亚洲一区二区三区四区五区午夜 | 国产亚洲精品精品国产亚洲综合 | 香蕉大人久久国产成人av | 精品欧美一区二区三区久久久小说 | 成人免费一区二区 | 日韩在线一区二区三区 | 黄色网址在线免费播放 | 午夜免费视频 | 久久精品一区二 | 亚洲精品视频免费观看 | 亚洲精品视频在线 | 自拍偷拍第一页 | 91在线视频免费观看 | 少妇性l交大片免费一 | 国产精品揄拍一区二区 | h视频在线观看免费 | 国产成人在线视频播放 | 欧美激情视频一区二区三区在线播放 | 日韩中文字幕一区 | 久久精品国产一区二区三区 | 亚洲一区免费 | 成人三级视频 | 四虎海外 | 91精品国产91久久久久久 | 国产69精品久久久久777 | 国产成人免费网站 | 午夜播放器在线观看 |