带有Case语句的MySQLi DB触发器出错

时间:2015-05-07 20:59:53

标签: mysqli triggers

我正在处理我的第一个数据库触发器并遇到问题。触发器涉及一个案例陈述,我收到错误#1054 - 未知栏' ORDERTYPECODE'在'字段列表'。

ORDERTYPECODE是表中从中调用触发器的列。我是否需要定义列所属的表?

这是我的代码:

CREATE TRIGGER `StartNewIncOrderProcessing` AFTER INSERT ON `T_ORDERS` 
FOR EACH ROW CASE WHEN ORDERTYPECODE = 'INC' THEN 
INSERT INTO T_INC_DATA (ORDERID) VALUES ((SELECT MAX(ORDERID) FROM T_ORDERS));
END CASE;

1 个答案:

答案 0 :(得分:0)

想出来。

CREATE TRIGGER `StartNewIncOrderProcessing` AFTER INSERT ON `T_ORDERS`

    FOR EACH ROW BEGIN
    IF NEW.ORDERTYPECODE = 'INC' THEN
    INSERT INTO T_INC_DATA (ORDERID)
    VALUES ((SELECT MAX(ORDERID) FROM T_ORDERS ));  
    END IF;

END