除了cron之外,还有其他方法可以定期执行SQL代码吗?

时间:2011-12-28 13:38:57

标签: php sql scripting triggers

基本上我想每隔X天截断一个表,但我不想使用cron。我想在php文件中有一种内置脚本来执行此操作,也许sql触发器可以帮助我。不幸的是我不知道如何使用它们。

3 个答案:

答案 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。