我想在客户端点击浏览器后5分钟后执行一条mysql命令。
有没有办法在纯MYSQL中实现这个目标?
有没有办法建立一个"队列系统"还有吗?
执行1次:在5分钟内运行
执行2次:1次后5分钟内运行
答案 0 :(得分:0)
SELECT SLEEP(5),http://mysqlresources.com/documentation/date-time/sleep上的详细信息。
说过你应该在你的应用程序而不是数据库中处理它。如果你在数据库上执行此操作,则可以建立更少的连接并且可以使用应用程序池。
答案 1 :(得分:0)
最好分开一些东西,以避免超时和其他令人讨厌的错误。
您可以使用cron或类似程序来安排执行PHP脚本,如下所示:
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char const *argv[]) {
int period, time;
const char micro_sec = 'u';
const char mili_sec = 'm';
const char sec = 's';
printf("\nSelect unit of Time period: \n");
printf("\nOption 1: %c for micro seconds\n"
"Option 2: %c for mili seconds\n"
"Option 3: %c for seconds\n",
micro_sec, mili_sec, sec);
printf("\nEnter unit of Time Period: ");
period = getchar();
if (period == micro_sec || period == mili_sec || period == sec) {
printf("Enter Time Period: ");
if (scanf("%d", &time) != 1) {
printf("Error reading time!\n");
exit(EXIT_FAILURE);
}
printf("\nUnit of time: %c\n", period);
printf("Time Period: %d\n", time);
} else {
printf("\nIncorrect unit of time entered.\n");
}
return 0;
}
请从here借来。
最好创建一个每5分钟由wget调用一次的脚本,并在MySQL中为队列创建一个表,并为被调用的脚本添加逻辑。