· 5 years ago · May 12, 2020, 05:50 AM
1# ref : https://www.mysqltutorial.org/mysql-triggers/working-mysql-scheduled-event/
2#1.Check event_scheduler = on or Active event_scheduler
3SET GLOBAL event_scheduler = ON;
4use test;
5show processlist;
6show events;
7#2.Creating new MySQL events
8#create table for test
9drop table if exists test.messages;
10CREATE TABLE test.messages (
11 id INT AUTO_INCREMENT primary key,
12 message VARCHAR(255) NOT NULL,
13 created_at DATETIME NOT NULL
14);
15
16
17#3.Create EVENT schedule
18#3.1
19drop event IF EXISTS test_event_01;
20CREATE EVENT IF NOT EXISTS test_event_01
21ON SCHEDULE AT CURRENT_TIMESTAMP
22DO
23 INSERT INTO messages(message,created_at)
24 VALUES('Test MySQL Event 1',NOW());
25#3.2
26drop event IF EXISTS test_event_02;
27CREATE EVENT IF NOT EXISTS test_event_02
28ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 MINUTE
29ON COMPLETION PRESERVE
30DO
31 INSERT INTO messages(message,created_at)
32 VALUES('Test MySQL Event 2',NOW());
33#3.3
34drop event IF EXISTS test_event_03;
35CREATE EVENT test_event_03
36ON SCHEDULE EVERY 1 MINUTE
37STARTS CURRENT_TIMESTAMP
38ENDS CURRENT_TIMESTAMP + INTERVAL 1 HOUR
39DO
40 INSERT INTO messages(message,created_at)
41 VALUES('Test MySQL recurring Event',NOW());
42
43show events from classicmodels;