mysql定时 *** 作有关时间差的问题

mysql定时 *** 作有关时间差的问题,第1张

MySQL从51开始支持event功能,类似oracle的job功能。

创建定时器 调用的存储过程

DELIMITER $$

DROP PROCEDURE IF EXISTS e_test $$

CREATE PROCEDURE e_test()

BEGIN

update pcdemo set v_isbag=0 where v_isbag=1 and to_days(now())-to_days(d_lasttime)>=10;

END $$

DELIMITER ;

要使定时起作用 MySQL的常量GLOBAL event_scheduler必须为on或者是1

查看是否开启定时器

SHOW VARIABLES LIKE '%sche%';

开启定时器 0:off 1:on

SET GLOBAL event_scheduler = 1;

创建事件

--每隔一秒自动调用e_test()存储过程

CREATE EVENT IF NOT EXISTS event_test

ON SCHEDULE EVERY 1 SECOND

ON COMPLETION PRESERVE

DO CALL e_test();

开启事件

ALTER EVENT event_test ON

COMPLETION PRESERVE ENABLE;

关闭事件

ALTER EVENT event_test ON

COMPLETION PRESERVE DISABLE;

Anllen,这样做是不科学的,如果是定时发送你可以考虑使用sql server中的计划,他可以定义执行某些任务,同时在sql server 2005以后还加入机器空闲时执行等等,而且还是可在失败时重试(重试次数自己设置),还可以对部分成功时进行记录等等。

如果是要求立即执行或是其他不能指执行条件时,可以考虑sql server 2005之后的server broker,这种机制较为安全。同时因为使用queue的原因,使消息只到达一次而不会重复,解决实际工作中的数据库与程序间的异步传输问题。

既然有这么多好的方案为什么还考虑重复地循环地查询数据库呢——你的数据库效率被拉的很慢的,别忘记了还是许多锁机制,会导致SQL server不再及时响应外部请求的!

首先你需要一个页面定时器

每10秒调用一次showMsg()的函数

setInterval("showMsg()",10000);

function showMsg(){

$post("xxxxxdo",{method:"msg"}, function(data) {

var tab = [];

tab[0]= "<table width='148' border='1' style='bgcolor:#FF0088;border:5px solid #AAAAAA;line-height:18px; margin:0;'>";

tab[1]= "<tr bgcolor='#F5DEB3' style='border:5px #FF0000;'>";

tab[2]= "<td align='center'><b>即时消息</b></td>";

tab[3]= "</tr>";

tab[4]= "<tr bgcolor='#EEFFBB'>";

tab[5]= "<td id='msgBox'>"+data+"</td>";

tab[6]= "</tr>";

tab[7]= "</table>";

var tabmsg = tabjoin("");

if(data!="")

$("#msgBox")html(tabmsg);

});

}

//这句就需要你把他加到你需要显示的位置了,这里显示你的信息

<div id="msgBox"></div>

以上就是关于mysql定时 *** 作有关时间差的问题全部的内容,包括:mysql定时 *** 作有关时间差的问题、C# 定时查询SQLServer数据库,并且将查询到的数据循环发送。请给个代码案例谢谢~ 网站的引用也可以。、struts2,定时查询数据库,然后将查询出来的信息显示在右下角d出的小框中。谁有类似代码,悬赏50!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9535441.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存