如何設定 MySQL 觸發器/過程執行的延遲?


要設定延遲,可以使用 SLEEP()。讓我們在過程執行延遲中實現 SLEEP()。

首先,我們將建立一個儲存過程 −

mysql> DELIMITER //
mysql> CREATE PROCEDURE delayInMessage()
   -> BEGIN
   -> SELECT SLEEP(20);
   -> SELECT "AFTER SLEEPING 20 SECONDS, BYE!!!";
   -> END
   -> //
Query OK, 0 rows affected (0.30 sec)
mysql> DELIMITER ;

現在,你可以使用 CALL 命令呼叫儲存過程。以下是語法 −

CALL yourStoredProcedureName();

以下是呼叫上述儲存過程和檢查執行延遲的查詢 −

mysql> call delayInMessage();

這將產生以下輸出 −

+-----------+
| SLEEP(20) |
+-----------+
| 0         |
+-----------+
1 row in set (20.00 sec)

+------------------------------------+
| AFTER SLEEPING 20 SECONDS, BYE!!!  |
+------------------------------------+
| AFTER SLEEPING 20 SECONDS, BYE!!!  |
+------------------------------------+
1 row in set (20.01 sec)
Query OK, 0 rows affected (20.04 sec)

請看上面的示例輸出,執行延遲為 20.01 秒。

更新於:2019 年 7 月 30 日

3K+ 瀏覽量

啟動你的職業

完成課程後透過認證

開始吧
廣告