create table instructor (
ID char(5),
password varchar(256),
token varchar(256) null,
name varchar(20) not null,
dept_name varchar(20),
salary numeric(8,2));
记录示例
id password token name dept_name salary
1 safakndanda null denis cooking 50000
2 adghbjksdaj null victor cleaning 60000
3 ahdagsdgda gads5a7sd6as7d peter management 120000
4 afsfgfdds null judy management 300000
例如,id 3上的令牌刚刚更新,我想编写触发器,它将在3小时后删除id = 3的令牌列上记录的数据
首先,您需要附加一列来保存令牌更新时间,每次更新时,代码或MySQL触发器都会更新该列。
下一步,您应该为此使用Event Scheduler。
CREATE EVENT ExpireTokens
ON SCHEDULE EVERY 1 HOUR DO
BEGIN
UPDATE instructor
SET
token = NULL
WHERE
TIMESTAMPDIFF(HOUR, token_updated_at, NOW()) > 3 AND
token IS NOT NULL
END;