如何設定 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 秒。
廣告