触发在命中时间戳后停用行

44u64gxh  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(235)

我有一张table叫 pages 在具有列的mysql中:

ID int NOT NULL PK,
end_time TIMESTAMP,
active BIT

我将结束时间设置为过期时间戳,因此当创建一行时 active 设置为1和 end_time 到到期日期/时间。
有没有一种方法可以创建一个触发器或类似的东西,这样当到达结束时间时,它就会设置为0?
我不知道触发器是否是最好的方法,或者我应该如何设置它,但是它似乎在我应该做的范围之内。
非常感谢您的帮助。

z0qdvdin

z0qdvdin1#

您可以使用事件作为基于时间的定期删除/设置 active=0 .
如果结束时间需要严格,保持 active=0 AND end_time <= NOW() 在检索条目的查询中。

相关问题