基本上我想每隔X天截断一个表,但我不想使用cron。我想在php文件中有一种内置脚本来执行此操作,也许sql触发器可以帮助我。不幸的是我不知道如何使用它们。
答案 0 :(得分:3)
您可以构建一些内容,以便在上次清空时检查每个页面访问。如果最后一次超过您想要的时间,则将其清空。它不是很有效,但如果你不能或不想使用crons,这是可能的。
答案 1 :(得分:0)
根据MySQL的版本,您可以访问CREATE EVENT,这允许MySQL在预定的时间触发自己的进程。
e.g。
CREATE EVENT myevent
ON SCHEDULE EVERY 1 DAY
DO
UPDATE myschema.mytable SET mycol = mycol + 1;
每天运行一项任务
其他数据库可能具有等效项,但您没有标识您正在使用的数据库。
答案 2 :(得分:0)
在我的网站上,我有自己的“cron”系统。我在加载页面后立即向我的cron脚本发出ajax请求。它检查当前日期与存储在数据库中的最后一个cron日期,如果[当前日期 - 最后一个日期]大于给定的intercal,则执行我的cron脚本并更新最后一个cron日期。我用ajax做了,所以我可以做很重的cron作业而不影响用户页面加载。而且只有当用户访问您的页面时,此cron才会受到影响,并且在许多情况下,如果用户没有访问您的页面,则您不需要执行cron。