鍍金池/ 問答/數(shù)據(jù)庫/ MYSQL如何實(shí)時(shí)更新數(shù)據(jù)庫的字段

MYSQL如何實(shí)時(shí)更新數(shù)據(jù)庫的字段

我有一個(gè)表,截止日期晚于現(xiàn)在時(shí)間的時(shí)候status為1,截止日期早于現(xiàn)在時(shí)間的時(shí)候status為0.
status初始值為1.
應(yīng)該怎么讓數(shù)據(jù)庫的status字段能夠?qū)崟r(shí)更新?
以下是表的字段:
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這個(gè)方法每秒鐘都要執(zhí)行
有沒有除了event之外的方法,只在到了截止時(shí)間的時(shí)候執(zhí)行一次update?

回答
編輯回答
挽歌

可以使用 觸發(fā)器 trigger

2017年10月31日 20:52
編輯回答
遲月

截止日期一般來說是設(shè)置了就不會(huì)變化的一個(gè)值,那么這個(gè)值和status表達(dá)的是同一個(gè)狀態(tài)。

DEADLINE < NOW 和 status 的邏輯值是一樣的

如果非要更新好像也只能使用event了,畢竟要實(shí)時(shí)的掃描整個(gè)表里的所有截止時(shí)間

如果這些數(shù)據(jù)用于query,where條件判斷DEADLINE < NOW和判斷STATUS效果一樣嘛

2017年6月8日 03:39