SQL:创建触发器并在bash屏幕上出现编译错误
我一直在尝试设置我的触发器脚本(在PostgreSQL中),我总是会收到如下错误消息:SQL:创建触发器并在bash屏幕上出现编译错误,sql,oracle,bash,syntax,triggers,Sql,Oracle,Bash,Syntax,Triggers,我一直在尝试设置我的触发器脚本(在PostgreSQL中),我总是会收到如下错误消息: Warning: Trigger created with compilation errors. 下面是有问题的脚本代码: CREATE OR REPLACE TRIGGER CityExists BEFORE INSERT OR UPDATE ON Player FOR EACH ROW BEGIN WHEN (NOT EXISTS( SELECT idTeam
Warning: Trigger created with compilation errors.
下面是有问题的脚本代码:
CREATE OR REPLACE TRIGGER CityExists
BEFORE INSERT OR UPDATE ON Player
FOR EACH ROW
BEGIN
WHEN (NOT EXISTS( SELECT idTeam FROM Team WHERE Team.idTeam = NEW.idTeam)) THEN
signal sqlstate '45000'
set message_text = 'Attempt to insert a player with an non-existing city.';
END
END
事实上,我找不到我的错误,我在这里遗漏了什么吗?您已经编写了PostgreSQL并将您的问题标记为Oracle。到底是什么?甲骨文发现了问题所在。新的。需要这样写:NEW和信号sqlstate不起作用,我用它来代替RAISE\u异常