尝试在插入触发器后运行程序,即使程序运行10分钟,最后一行更新时间与第一行相同

问题描述 投票:0回答:1

在触发器内,我尝试填充多个表并尝试获取每个表填充的开始和结束时间,正常运行时需要 4 分钟才能填充表,因此开始和结束时间有 4 分钟的差异。 但是,当通过填充触发表来触发时,它显示的开始和结束时间与触发时间相同,但我的表正在填充

表名称:表更新状态

预期结果

表名:开始时间:结束时间 XYZ: 03-05-2024 10:30:00: 03-05-2024 10:34:00

触发器中的实际结果

表名:开始时间:结束时间 XYZ: 03-05-2024 10:30:00: 03-05-2024 10:30:00

sql mysql database join triggers
1个回答
0
投票

来自MySQL手册:

仅评估返回当前日期或时间的函数 在查询执行开始时每个查询一次。这意味着 在单个查询中多次引用函数(例如 NOW()) 总是产生相同的结果。 (出于我们的目的,单个查询也 包括对存储程序的调用(存储例程、触发器或 事件)以及该程序调用的所有子程序。)这个原则 也适用于 CURDATE()、CURTIME()、UTC_DATE()、UTC_TIME()、 UTC_TIMESTAMP() 及其任何同义词。

您将在此页面上找到参考,但您需要向下滚动。

© www.soinside.com 2019 - 2024. All rights reserved.