我想每天自动截断表。我正在使用这种方法,它正在工作。
Label
我正在使用带有提交按钮的代码,然后截断表格,这是非常好的工作。
我如何自动截断表格?我正在尝试使用if-else和ajax
进行strtotime答案 0 :(得分:2)
您只能使用MySQL创建此内容,请阅读有关MySQL Events
的更多信息MySQL事件是根据计划运行的任务。因此,我们 有时将它们称为预定事件。创建活动时 您正在创建包含一个或多个SQL的命名数据库对象 开始时以一个或多个定期间隔执行的语句 并在特定日期和时间结束。从概念上讲,这是类似的 对于Unix
crontab
(也称为“cron job”)或者 WindowsTask Scheduler
。
例如:
CREATE EVENT IF NOT EXISTS my_truncater
ON SCHEDULE AT CURRENT_TIMESTAMP
DO
TRUNCATE TABLE myTable
要定期重复您的活动,请使用every
代替AT
: -
要定期重复操作,请使用EVERY子句。该 每个关键字后跟一个间隔,如前面所述 讨论AT关键字。 (+ INTERVAL不与每个人一起使用。)For 例如,每周6周意味着“每六周一次”。
所以示例如下: -
CREATE EVENT IF NOT EXISTS my_truncater
ON SCHEDULE EVERY 24 HOURS
DO
TRUNCATE TABLE myTable
了解更多详细信息/功能,请查看man page了解Events
的语法,同样重要的是查看Events
的{{1}}权限在MySQL中。
cronjob
方式: -
- 创建可执行文件[PHP文件/ SQL文件...等]
- 假设您将选择PHP,请创建一个新文件example.php
$query = "TRUNCATE TABLE myTable";
/* your mysqli/pdo connection & queries */
- 将以下命令添加到/etc/cron.daily
目录的bash脚本:
$ php /path/to/example.php
答案 1 :(得分:0)
另一个解决方案是创建一个调用脚本的cron作业,该脚本截断数据库中的表。