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
廣告