此SQL触发器代码中是否存在与编译相关的问题
感谢您帮助我查找此SQL触发器中的编译错误此SQL触发器代码中是否存在与编译相关的问题,sql,oracle,plsql,triggers,Sql,Oracle,Plsql,Triggers,感谢您帮助我查找此SQL触发器中的编译错误 CREATE TRIGGER Trig_Agence_Compte_2 BEFORE DELETE OR UPDATE OF No ON Agence FOR EACH ROW DECLARE x NUMBER:=0; BEGIN SELECT COUNT(*) IN x FROM Compte_2@dl_RABAT WHERE Agence_No=:OLD.No; IF x <> 0 THEN RA
CREATE TRIGGER Trig_Agence_Compte_2
BEFORE DELETE OR UPDATE OF No
ON Agence FOR EACH ROW
DECLARE
x NUMBER:=0;
BEGIN
SELECT COUNT(*) IN x FROM Compte_2@dl_RABAT WHERE Agence_No=:OLD.No;
IF x <> 0 THEN
RAISE_APPLICATION_ERROR(-20750, 'Operation Interdite : Agence Utilisee dans Compte_2');
END IF;
END;
/
创建触发器触发代理\u Compte\u 2
在删除或更新编号之前
关于每行的代理
声明
x编号:=0;
开始
从Compte中选择x中的计数(*)_2@dl_RABAT其中,Agence_No=:OLD.No;
如果x 0那么
提出申请错误(-20750,“禁令行动:机构使用dans Compte 2”);
如果结束;
结束;
/
您可能还有其他问题,但我认为这是错误的:
SELECT COUNT(*) IN x FROM Compte_2@dl_RABAT WHERE Agence_No=:OLD.No;
----------------^
我希望
进入这里的。最好在错误消息中包含有问题的:old.no
,这样在多行更新的情况下,您就知道是哪个值导致了问题。我会这样做。。非常感谢。