MySQL触发器:到达特定日期时间时更新
我想创建一个 MySQL 触发器,每当另一个表中的一个日期时间行到达比现在低的日期时间时,它就会更新一个表.
I want to create a MySQL trigger that updates a table everytime one of the datetime rows in a different table reaches a datetime lower than now.
我将如何做到这一点?这可能吗?
举例说明:
table_1 table_2
-------- ------------------- -------- -
id 1 id 1
datetime 2011-05-10 11:11:11 counter 1
所以,当时间过去并且 NOW()
变成 2011-05-10 11:11:12
时,我想让计数器加 1.
So, when time passes and NOW()
becomes 2011-05-10 11:11:12
, then I want to have the counter upped by 1.
推荐答案
您应该能够使用触发器和事件调度程序来做到这一点:
- 在每次更新/插入时触发的表上创建一个触发器
- 此触发器创建在行的日期时间发生的预定事件并更新您的第二个表
You should be able to do it using a trigger and the event scheduler:
- create a trigger on the table that is fired on every update / insert
- this trigger creates a scheduled event that occurs at the datetime of the row and updates your second table
相关文章