我在项目上使用mysql,每次password_last_updated
字段更新时我都需要更新password
(时间戳)字段。有没有办法使用mysql检测password
列的更新,一旦发生此更新,password_last_updated
列将自动更新当前时间戳?
您应该可以使用触发器检查密码值的更改,并将password_last_updated
设置为current_timestamp
(如果不同):
DELIMITER //
CREATE TRIGGER update_ts
BEFORE UPDATE ON accounts
FOR EACH ROW
BEGIN
IF NEW.password != OLD.password THEN
SET NEW.password_last_updated = CURRENT_TIMESTAMP();
END IF;
END //
DELIMITER ;