我在mysql数据库中有一个用户表,用于存储用户的出生日期。根据用户的出生日期,我在此表中有一个名为user_level的字段,根据用户年龄填充1或2,即13岁以下为1,或13岁及以上为2。
当用户生日发生时,有没有办法将此字段从1动态更改为2?
答案 0 :(得分:2)
使用mysql调度程序(只要你的mysql版本是5.1.6 +)。
string[i]
确保调度程序已启用CREATE EVENT birthdayEvent
ON SCHEDULE
EVERY 1 DAY
STARTS '2015-05-01 04:00:00' ON COMPLETION PRESERVE ENABLE
DO
update user set user_level = 2 where user_birthday = date(now() - interval 13 year);
。然后这个事件将每天凌晨4点运行,并为13年前生日那天的每个人更新用户级别。