Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果我在mysql中运行我的事件会发生什么?_Php_Mysql - Fatal编程技术网

Php 如果我在mysql中运行我的事件会发生什么?

Php 如果我在mysql中运行我的事件会发生什么?,php,mysql,Php,Mysql,我在mysql中创建了一个小脚本并运行它。它确实创建了一个事件,但接下来会发生什么?我是否仍然需要在php中调用它,或者它是否按照我在偶数中声明的计划运行 这是我的活动 DELIMITER | CREATE EVENT updatedoggytreat ON SCHEDULE EVERY 1 MONTH STARTS '2011-07-01 00:00:00' ON COMPLETION PRESERVE DO BEGIN UPDATE animal SET treat = tre

我在mysql中创建了一个小脚本并运行它。它确实创建了一个事件,但接下来会发生什么?我是否仍然需要在php中调用它,或者它是否按照我在偶数中声明的计划运行

这是我的活动

DELIMITER |

CREATE EVENT updatedoggytreat
ON SCHEDULE EVERY 1 MONTH STARTS '2011-07-01 00:00:00'
ON COMPLETION PRESERVE
DO
  BEGIN
    UPDATE animal SET treat = treat + 6, bone = 5 WHERE breed = 'Bulldog' ;
    UPDATE animal SET treat = treat + 3, bone = bone + 4 WHERE breed  = 'small dog';
    UPDATE animal SET treat = treat + 6, bone = 5 WHERE breed = 'mix breed';
    UPDATE animal SET treat = 10, bone = 5 WHERE breed  = 'doberman';
    UPDATE animal SET treat = 15 WHERE breed  = 'sheepdog';
  END |

 DELIMITER ;
我是否仍然需要在php中调用这个函数,或者它是否根据我所述的时间表自动运行

非常感谢。

您不必使用任何东西手动调用它。它们是预定事件或“临时触发器”

SQL实例,即服务器本身将管理所有这些。 只要您的mysql正在运行,根据您设置的时间和周期性等,事件就会像您预期的那样触发


您可能想研究一下,如果在计划的事件即将发生时,它恰好处于关闭状态,会发生什么情况-这可能是一个配置选项。

如果您仍然必须手动调用它,那么用它的计划定义事件将是毫无意义的…一旦在数据库上创建了事件,它是由数据库管理的,而不是PHP或任何其他代码。谢谢您的好意,先生。我刚刚开始学习mysql。我知道基本的,但不是全部。这就是我问的原因。有趣的是,一些用户或所谓的“帮助者/顾问”会因为一个问题对他们来说太简单而降级或拒绝投票,而不考虑这个问题对海报来说可能太难,甚至太难。谢谢……这意味着一旦我在mysql中运行它,它将自动运行?非常感谢。@Patrick SQL实例-服务器本身将管理所有内容。所以,是的。只要你的mysql还在运行,我是说。。。根据您设定的时间、周期等,您可能想研究一下,如果在计划的事件发生时,它恰好停机,会发生什么情况-这可能是一个配置选项。非常感谢。最后我更明白了。谢谢你的明确回答。@Patrick别担心,兄弟。不要害怕打勾:)还有,很抱歉投了反对票。。。