我在MariaDB事件调度程序中遇到错误

时间:2015-08-31 03:39:02

标签: sql event-handling mariadb

delimiter |

CREATE EVENT queue_sorting
    ON SCHEDULE EVERY 1 SECONDS
    DO
    BEGIN
        DECLARE ts, pn INT;

select  Table_Size_ID INTO ts
    from  Tables
    where  Table_Size_ID = 
      ( SELECT  Table_Size_ID
            from  Queue
            order by  Q_TIME desc
            limit  1
      )
      and  Phone_Number is null
    order by  Table_Line asc, Table_Number asc
    limit  1;


select Phone_Number into pn from Queue order by Q_TIME desc limit 1;

update tables set Phone_Number=pn where Table_Size_ID=ts;


delete from Queue where Phone_Number=pn and Table_Size_ID=ts;

END |

delimiter ;

我很乐意创建这样的事件来管理队列,但代码是错误。我不知道这就是原因。我一直在网站上搜索,但我找不到最好的解决方案。我该怎么办?谁能解释一下?

1 个答案:

答案 0 :(得分:0)

如果所有最新的Table_Size_ID都有Phone_Number怎么办?事件无法通过它来寻找有用的东西。

Table_Size_ID - 你正在规范尺码吗? (我希望不是。)

请提供SHOW CREATE TABLE