MYSQL如何实时更新数据库的字段

我有一个表,截止日期晚于现在时间的时候status为1,截止日期早于现在时间的时候status为0.
status初始值为1.
应该怎么让数据库的status字段能够实时更新?
以下是表的字段:
ID,TITLE,USER_ID,HITS,STATUS,REVISION,CREATE_USER_ID,LAST_UPDATE_USER_ID,CREATE_DATE,DEADLINE,LAST_UPDATE_DATE,APP_NAME,TENANT_ID,APP_SCOPE

CREATE event event_now  
ON SCHEDULE  
EVERY 1 SECOND
DO INSERT INTO event_test VALUES(1); 

event这个方法每秒钟都要执行
有没有除了event之外的方法,只在到了截止时间的时候执行一次update?

阅读 3k
2 个回答

截止日期一般来说是设置了就不会变化的一个值,那么这个值和status表达的是同一个状态。

DEADLINE < NOW 和 status 的逻辑值是一样的

如果非要更新好像也只能使用event了,毕竟要实时的扫描整个表里的所有截止时间

如果这些数据用于query,where条件判断DEADLINE < NOW和判断STATUS效果一样嘛

可以使用 触发器 trigger

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题