MySQL - SHOW CREATE EVENT 语句
MySQL SHOW CREATE EVENT 语句
MySQL 事件只不过是按照特定计划执行的任务。一个事件可以包含一个或多个 MySQL 语句,这些语句存储在数据库中,并按照指定的计划执行。
SHOW CREATE EVENT 语句显示用于创建指定事件的查询。
语法
以下是 MySQL SHOW CREATE EVENT 语句的语法 -
SHOW CREATE EVENT event_name
其中,event_name 是需要 CREATE 语句的事件的名称。
示例
假设我们使用 CREATE TABLE 语句创建了一个名为 data 的表,如下所示 -
CREATE TABLE Data ( Name VARCHAR(255), age INT );
以下查询创建一个事件,该事件在执行一分钟后在上述创建的表中插入一条记录 -
CREATE EVENT example_event1 ON SCHEDULE AT CURRENT_TIMESTAMP +
INTERVAL 1 Minute DO INSERT INTO new.Data VALUES('Rahman', 25);
以下查询显示上述使用的 CREATE EVENT -
SHOW CREATE EVENT example_event1\G;
输出
以下是上述查询的输出 -
********** 1. row **********
Event: example_event1
sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
NO_ZERO_IN_DATE, NO_ZERO_DATE,
ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
time_zone: SYSTEM
Create Event: CREATE DEFINER=`root`@`localhost` EVENT
`example_event1` ON SCHEDULE AT '2023-12-12 16:04:57'
ON COMPLETION NOT PRESERVE ENABLE DO INSERT
INTO new.Data VALUES('Rahman', 25)
character_set_client: cp850
collation_connection: cp850_general_ci
Database Collation: utf8mb4_0900_ai_ci
示例
假设我们创建了另一个事件,如下所示 -
CREATE EVENT example_event2 ON SCHEDULE AT ADDTIME(now(), "00:1:00")
DO INSERT INTO new.Data VALUES('Raju', 30);
以下是 show create 语句 -
SHOW CREATE EVENT example_event2\G;
输出
上述查询产生以下输出 -
********** 1. row **********
Event: example_event2
sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
NO_ZERO_IN_DATE,NO_ZERO_DATE,
ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
time_zone: SYSTEM
Create Event: CREATE DEFINER=`root`@`localhost` EVENT
`example_event2` ON SCHEDULE AT
'2023-12-12 16:05:48' ON COMPLETION
NOT PRESERVE ENABLE DO INSERT INTO
new.Data VALUES('Raju', 30)
character_set_client: cp850
collation_connection: cp850_general_ci
Database Collation: utf8mb4_0900_ai_ci

