尝试创建触发器的错误

时间:2020-07-18 20:54:41

标签: mysql triggers

我正在尝试使用phpmyadmin在mysql上执行此查询

 CREATE TRIGGER complete_ride
 AFTER INSERT ON completed_ride
 FOR EACH ROW 
    when(NEW.status = 'OK') then
    BEGIN
    UPDATE driver SET n_successes = n_successes + 1
    WHERE person_id = (SELECT driver_id FROM vehicle WHERE plate = NEW.plate);
    UPDATE passenger SET n_successes = n_successes + 1
    WHERE person_id = NEW.passenger_id;
    UPDATE driver SET wallet = wallet + NEW.amount
    WHERE person_id = (SELECT driver_id FROM vehicle WHERE plate = NEW.plate);
    END

但是我得到了

#1064 - Syntax error near 'when(NEW.status = 'OK') then
    BEGIN
    UPDATE driver SET n_successes = ...' line 4

有什么解决办法吗?谢谢

1 个答案:

答案 0 :(得分:-1)

您必须使用IG而不是wHEN

我更改了WHERE子句,我不完全知道

CMakeList.txt