我的想法是: 如果有人在我的数据库上写了一条消息,我想在插入我的表'消息'后24小时删除该消息。触发器只是在之后或之前执行并插入或更新,但我希望在此消息存在一天时实时删除。我这样做是为了一个webapplication.Is这是一个PHP问题而不是SQL? 你能告诉我一些可行的办法吗?
提前致谢。
答案 0 :(得分:4)
请勿每24小时删除一次记录。相反,在检索数据时计算一个标记,指示记录是否超过24小时。只是过滤掉它们。您可以使用视图进行设置。
然后,在闲暇时,删除超过24小时的邮件。您可以每天,每周一次或随时随地进行此操作。大量删除会对性能产生负面影响,因此您可能希望等到安静的时间进行删除。
答案 1 :(得分:1)
您必须运行预定作业。只需删除其插入/创建时间超过当前时间24小时的记录。如果您当前没有“创建时间”字段,请务必创建一个,以便进行比较。
让它每半小时,每小时运行一次,或者多次更新。
您可以在此处找到有关安排的更多信息: