到达日期后如何使特定行过期?

时间:2019-05-30 07:09:45

标签: sql sql-server

我有一张学生用桌,每个学生都必须获得一张身份证,该身份证的有效期为一年

我希望学生记录在到达到期日期时到期,并且到期日期也需要更新

例如,如果到期日期是2020年1月1日,则应将其更改为01/01/2021。

3 个答案:

答案 0 :(得分:0)

您可能需要每天运行的cron作业,该作业将检查日期,如果date是今天的日期,它将对其进行更新。

第二种可能是MySql中的事件调度程序。有关事件计划程序的更多详细信息,请参阅

https://dev.mysql.com/doc/refman/5.7/en/event-scheduler.html

答案 1 :(得分:0)

update tablestudent set expired=yes where expirationdate < getdate()

您需要将其安排为每天运行的工作。

答案 2 :(得分:0)

将数据保存到表中时,必须具有“过期”列。 保存到期,expirationDate = getDate()+ 1year;

保存时

Insert into students (expiration) values (expirationDate);

更新时每天运行

UPDATE students
SET status = 'expired'
WHERE expirationDate < getDate();