PHP脚本是否需要等待MySql触发器完成?

PHP脚本是否需要等待MySql触发器完成?,php,mysql,triggers,federated-table,Php,Mysql,Triggers,Federated Table,数据库是MySQL。我希望实现一个触发器,每当放置新评级时更新聚合评级表。还有一些其他类似的用例,我希望在这些用例中实现触发器 这些触发器可能正在更新联合表。所以我的问题是: 插入新评级的php脚本是否需要在php脚本完成之前等待触发器完成 PS:我理解触发器不是一个好主意,放逻辑,也许我会更好地与一些消息,如 触发器是同步的;生成它们的INSERT/UPDATE/DELETE会一直阻塞,直到触发器完成执行,包括触发器执行的任何操作(甚至这些操作生成的任何后续触发器) 触发器是原子的。也就是说,

数据库是MySQL。我希望实现一个触发器,每当放置新评级时更新聚合评级表。还有一些其他类似的用例,我希望在这些用例中实现触发器

这些触发器可能正在更新联合表。所以我的问题是: 插入新评级的php脚本是否需要在php脚本完成之前等待触发器完成


PS:我理解触发器不是一个好主意,放逻辑,也许我会更好地与一些消息,如

触发器是同步的;生成它们的INSERT/UPDATE/DELETE会一直阻塞,直到触发器完成执行,包括触发器执行的任何操作(甚至这些操作生成的任何后续触发器)

触发器是原子的。也就是说,如果触发器执行的任何更改失败,那么触发器将失败,并且它还将取消生成触发器的更改

触发器还对生成触发器的同一事务的范围进行更改。因此,触发器所做的更改可以与生成触发器的更改一起提交/回滚。如果在PHP应用程序完成事务并退出时触发器仍在运行,则无法确保它们在该事务中发生


这适用于前触发器和后触发器。你的应用程序会一直阻塞,直到所有触发器都完成。

我的直觉告诉我,不必等待触发器运行,但如果你想在该连接上运行另一个查询,你可以等待。也就是说,我从来没有使用过触发器,所以我不能将此作为答案发布。我假设您指的是插入后触发器?如果您希望异步更新聚合表,则使用cron脚本,或者使用消息系统gearman/rabbitmq/zeromg来执行更新脚本将是一个更好的解决方案。@MarkBaker您能看看与您的建议相关的后续问题吗?谢谢你这么好的解释。