我知道必须有一种方法可以在指定的日期自动删除MySQL表中的行。我今天刚刚死了脑子:/
我们只是说我有CMS,我输入帖子,并希望表中的一个字段是“delete_date”,如果我在该字段中输入日期,它将在指定的日期删除该行。如果我没有输入日期,则不会自动删除。
使用PHP / MySQL执行此操作的最佳方法是什么?提示或示例会有所帮助。
答案 0 :(得分:2)
运行计划任务(cron作业),删除delete_date字段大于或等于当前日期的所有行。
答案 1 :(得分:0)
基本查询:
DELETE * FROM cms_table WHERE delete_date='$the_date_to_delete'
答案 2 :(得分:0)
我不懂PHP,但这确实是一个与语言无关的问题,除非你不知道如何用这种语言执行SQL。
您可以像@tylerl建议的那样运行计划任务。用.Net语言很容易,不确定PHP。如果您希望在一天中不断删除旧记录,您还可以选择运行服务。再次,在.Net中很容易。
但是,如果您有一个应用程序(PHP,.Net等),您想要物理检查要删除的记录:
delete * from myTable where recordDateField > 'cutOffDate' // I think you pass parameters with a `$` - not sure