过去当前时间戳或日期时自动删除记录

时间:2012-11-29 10:14:22

标签: php mysql field

我正在编写密码恢复脚本。当用户想要恢复他的密码时,会在数据库中写入50串随机验证码,这些码将用作$_GET进行验证。

这个名为recovery的表格是var(50)unique。接受链接后,该字段将被删除。但是,如果用户不打算单击链接怎么办?这必须从数据库中删除,因为创建这个随机50字符串的可能性会变大,数据库会获得不必要的数据。

我一直在环顾四周,看到了这个:

INSERT INTO what_ever ('', '', now(), DATE_ADD(NOW(), INTERVAL 3 DAY));

这样我就输入了截止日期,但是MYSQL怎么能在时机成熟的时候自行删除?这甚至可能吗?

如果没有,这是我最好的选择吗?

修改

当然3天太多了。我想了15分钟。

2 个答案:

答案 0 :(得分:3)

您可以编写一个在插入新行时删除旧数据的触发器。

如果您不知道如何编写触发器,请使用像HeidiSQL这样的高级MySQL客户端,它将帮助您使用某些GUI。

答案 1 :(得分:2)

您可以在数据库中插入一个触发器,以删除任何超过一定数量的记录。