2017-08-17 73 views
0

我已经注册了一个事件调度程序,每周星期一运行,并完成了所有要求遵循的使用Google搜索的步骤。 。我已经将服务器日期回溯到星期一日期,但仍然没有被解雇。MsSql计划事件触发

步骤1组偶数调度上:

SET GLOBAL event_scheduler = ON; 

第2步创建活动:

CREATE EVENT ScheduledFaMeetingTableUpdate 
ON SCHEDULE 
    EVERY 1 WEEK 
    STARTS CURRENT_DATE + INTERVAL 0 - WEEKDAY(CURRENT_DATE) DAY + INTERVAL 10 HOUR 
    DO 
    Call FAMeetingWeekUpdate_sp(); 

SELECT @@global.event_scheduler; 
Result : ON 

Show Events; 
Result : 
'bitnami_redmine', 'ScheduledFaMeetingTableUpdate', '[email protected]', 'SYSTEM', 'RECURRING', NULL, '1', 'WEEK', '2017-08-14 10:00:00', NULL, 'ENABLED', '0', 'utf8', 'utf8_general_ci', 'utf8_general_ci' 


SHOW PROCESSLIST; 
Result : 
'1', 'event_scheduler', 'localhost', NULL, 'Daemon', '-65135', 'Waiting for next activation', NULL 
+0

MySQL或MSSQL? – Barmar

回答

0

您还没有指定,该事件应该被一次又一次地执行。

manual

通常情况下,一旦事件已过期,它将立即删除。您可以通过指定ON COMPLETION PRESERVE来覆盖此行为。使用ON COMPLETION NOT PRESERVE只会使默认的非持久行为显式化。

你创建事件的语句应该是这样的:

CREATE EVENT ScheduledFaMeetingTableUpdate 
ON SCHEDULE 
EVERY 1 WEEK 
STARTS CURRENT_DATE + INTERVAL 0 - WEEKDAY(CURRENT_DATE) DAY + INTERVAL 10 HOUR 
ON COMPLETION PRESERVE 
DO 
    Call FAMeetingWeekUpdate_sp();