我是 MySql 的新手,需要帮助。
为了更清楚,我的 MySql 表中有 3 列;
- 入会日期
- 会员到期
- 会员身份
第 1 列和第 2 列使用 DATE 格式。第三列使用 VARCHAR。
所以,我想做的是,如果到期日期超过当前日期,第 3 列的记录会自动更改为“EXPIRED”。如果没有超过,它会显示'ACTIVE'。
可能吗?
如果有人可以提供帮助,我真的很感激。
我是 MySql 的新手,需要帮助。
为了更清楚,我的 MySql 表中有 3 列;
第 1 列和第 2 列使用 DATE 格式。第三列使用 VARCHAR。
所以,我想做的是,如果到期日期超过当前日期,第 3 列的记录会自动更改为“EXPIRED”。如果没有超过,它会显示'ACTIVE'。
可能吗?
如果有人可以提供帮助,我真的很感激。
MySQL 支持EVENTS
. 当您不想手动检查每条记录的状态时,这很有帮助。
示例代码:
DELIMITER $$
CREATE EVENT `update_status`
ON SCHEDULE EVERY 1 HOUR
DO BEGIN
UPDATE tableName
SET MembershipStatus = IF(CURDATE() > MembershipExpiry, 'Expired', 'Active');
END $$
DELIMITER ;
该语句的作用是在创建脚本之后,它将每1 Hour
隔一段时间触发一次。
要了解更多信息EVENTS
,请参阅下面的链接。