创建在Laravel 4原始db语句中不起作用的事件

时间:2014-07-31 11:42:36

标签: php mysql laravel laravel-4

我正在尝试使用Laravel的DB :: statement()方法在5分钟后运行查询,但我无法让它工作。查询似乎运行,因为没有给出错误,但事件不是在MySQL中创建的。

以下是代码:

DB::statement('
    CREATE EVENT delinactief
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 MINUTE
    DO
        BEGIN
            UPDATE advertenties SET inactief = 0 WHERE id = :id;
        END
', array('id' => $adv->id));

我在查询中尝试使用DELIMITER,但这会给我带来错误。

1 个答案:

答案 0 :(得分:1)

删除BEGIN和END。

DB::unprepared('
    CREATE EVENT delinactief
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 MINUTE
    DO
    UPDATE advertenties SET inactief = 0 WHERE id = :id;
', array('id' => $adv->id));