2013-05-17 40 views
0

我的想法是删除时间行时间:我 如果有人写我的数据库中的信息要删除该消息被插在我的表“消息”后24小时。触发器只是在之后或之前采取行动,插入或更新,但我希望在此消息有一天存在时实时删除。我是这样做的一个web应用程序。这是一个PHP的问题,而不是SQL? 你能告诉我一些可能的方法吗?我怎样才能从我的数据库

在此先感谢。

+0

'男子1 crontab的5 crontab' –

回答

4

不要删除记录,每24小时。相反,计算一个标志,当您检索数据时,说明该记录是否超过24小时。只是过滤出来。您可以使用视图进行设置。

然后,在您的休闲,删除的邮件超过24小时。你可以每天做一次,每周一次,或者任何时候你喜欢。大量删除操作可能会对性能产生不利影响,因此您可能需要等待一段时间才能执行删除操作。

+0

+1这是可靠的方法,如cronjobs有时无法运行,或MySQL事件没有得到迁移到新数据库等。标记记录顶部的VIEW意味着应用程序甚至不需要意识到这一点。 – pilcrow

1

您将不得不运行计划作业。只需从当前时间删除插入/创建时间超过24小时的记录。如果您目前没有“创建时间”字段,请务必创建一个,以便您可以进行比较。

有它每半小时,一小时,或不过很多时候你会喜欢的更新。

你可以找到更多有关安排的位置:

MySql Event Scheduler