END IF语句触发前的MySQL错误

时间:2017-10-30 16:25:01

标签: mysql sql mysql-error-1064

您好我正在尝试在mysql中编写一个触发器,下面是我的代码`

DELIMITER $$
CREATE TRIGGER updateNewEmp
BEFORE INSERT ON employess
FOR EACH ROW
BEGIN
    IF new.salary <50000 THEN
    SIGNAL SQLSTATE '45000'
    END IF
END$$
DELIMITER ;

但是我收到错误声明#1064 - 您的SQL语法出错了;检查与您的MariaDB服务器版本相对应的手册,以便在第7行的“END IF END”附近使用正确的语法。有人可以解释我在这里做错了什么吗?

1 个答案:

答案 0 :(得分:3)

尝试将分号放入:

DELIMITER $$
CREATE TRIGGER updateNewEmp
BEFORE INSERT ON employess
FOR EACH ROW
BEGIN
    IF new.salary <50000 THEN
        SIGNAL SQLSTATE '45000';
    END IF;
END$$

DELIMITER ;