ZF2 MYSQL 事件管理器自定义查询

ZF2 MYSQL Event Manager Custom Query

我正在尝试在 MySQL 事件管理器中保存一个事件,分为两部分,如下所示。

我可以通过 PHPMyAdmin 成功添加它,但是使用 ZF2 TBlegateway 却不开心..

任何解决方案 - 直接通过 php 现在都可以接受..

$this->tableGateway->getAdapter()->driver->getConnection()>execute($eventSql);

$eventSql =

"DELIMITER |

    CREATE EVENT slacheckevent9
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 2 MINUTE
    DO
    BEGIN

    UPDATE sla AS T1,
    (SELECT eventdata FROM eventdata WHERE eventname = 'CUSTOMER 
    CONTACTED' AND instructionid=3) AS T2
    SET T1.actualtime=T2.eventdata WHERE T1.id = 9;

    UPDATE sla
    SET slasuccess= CASE
    WHEN actualtime <= duetime THEN true
    ELSE slasuccess
    END
    WHERE id = 9
    ;



    END |

    DELIMITER ;";

简单:

$eventSql = "
    CREATE EVENT slacheckevent9
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 2 MINUTE
    DO
    BEGIN

    UPDATE sla AS T1,
    (SELECT eventdata FROM eventdata WHERE eventname = 'CUSTOMER 
    CONTACTED' AND instructionid=3) AS T2
    SET T1.actualtime=T2.eventdata WHERE T1.id = 9;

    UPDATE sla
    SET slasuccess= CASE
    WHEN actualtime <= duetime THEN true
    ELSE slasuccess
    END
    WHERE id = 9
    ;



    END
    ";
$this->tableGateway->getAdapter()->query($eventSql, \Zend\Db\Adapter\Adapter::QUERY_MODE_EXECUTE);