事件发生在创建时间而不是开始时间

时间:2015-04-23 22:08:47

标签: mysql events insert truncate

我的创建EVENT标题如下。创建正确执行,但插入发生在Create执行而不是STARTS时间。然后,TRUNCATE发生在START时间。我希望TRUNCATE首先在START时间发生,然后是INSERT。我完成了所有可以重新安排的事情,并且总是按照错误的顺序进行。注意:START时间是在执行时的current_timestamp之后。

 Create EVENT pkgtest
     ON SCHEDULE every 12 HOUR
     STARTS '2015-04-23 22:00:00'
     ON COMPLETION PRESERVE
     DO

     TRUNCATE TABLE
          workorders_pkgtest
     ;
     TRUNCATE TABLE
          tracking_buffer_pkgtest
     ;
     INSERT 
          INTO workorders_pkgtest
          (...

1 个答案:

答案 0 :(得分:1)

我认为您需要在一系列陈述中添加beginend。还要确保正确设置分隔符

 delimiter //
 Create EVENT pkgtest
     ON SCHEDULE every 12 HOUR
     STARTS '2015-04-23 22:00:00'
     ON COMPLETION PRESERVE
     DO
       BEGIN
         TRUNCATE TABLE
           workorders_pkgtest
         ;
         TRUNCATE TABLE
           tracking_buffer_pkgtest
         ;
         INSERT 
           INTO workorders_pkgtest
           (... 
         ;
     END // 
 delimiter ;