【发布时间】:2017-07-29 11:41:41
【问题描述】:
大家好,首先感谢您的耐心和帮助!
我在 MySQL 中创建触发器时卡住了(我在 Ubuntu 16.10 上使用 MySQL WorkBench 6.3)。
代码如下:
CREATE TRIGGER check_device
BEFORE INSERT ON dummyPT_data.devices
FOR EACH ROW
BEGIN
IF (NEW.dtype != "HOST" && NEW.ipaddr != NULL || NEW.netmask != NULL || NEW.dfgateway != NULL)
THEN raise_application_error(-20001,'The device type is uncompatible with data inserted');
END IF;
END;
代码编辑器在函数raise_application_error 下划线并说:Syntax error: missing 'colon'
我在文本中找不到任何错误。我希望你能帮助我。
【问题讨论】:
-
好的,我已经编辑了代码。现在看起来像这样:
DELIMITER $$ CREATE TRIGGER check_device BEFORE INSERT ON dummyPT_data.devices FOR EACH ROW BEGIN IF (NEW.dtype != "HOST" && NEW.ipaddr IS NOT NULL || NEW.netmask IS NOT NULL || NEW.dfgateway IS NOT NULL) THEN raise_application_error(-20001,'The device type is uncompatible with data inserted'); END IF; END$$ DELIMITER;我得到同样的错误加上结束DELIMITER关键字的错误,它说Syntax error: DELIMITER (identifier) is not valid input in this position
标签: mysql ubuntu triggers mysql-workbench