如何设置MySQL触发器/过程执行的延迟?

要设置延迟,您可以使用SLEEP()。让我们执行SLEEP()程序中的执行延迟。

首先,我们将创建一个存储过程-

mysql> DELIMITER //
mysql> CREATE PROCEDURE delayInMessage()   -> BEGIN
   -> SELECT SLEEP(20);
   -> SELECT "AFTER SLEEPING 20 SECONDS, BYE!!!";
   -> END
   -> //
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)

查看上面的示例输出,执行延迟为20.01秒。