我的目标是创建一个触发器,以检查您尝试输入的数字是否NR_RECIBO
在Doc_cabecalho
具有属性的表中TIPO_DOC = 4
CREATE OR REPLACE TRIGGER ValidaRecibo
BEFORE INSERT ON Recibo
FOR EACH ROW
DECLARE val NUMBER;
BEGIN
SELECT COUNT(*) INTO val
FROM Doc_cabecalho
WHERE (TIPO_DOC = 4 AND NR_DOCUMENTO = :NEW.NR_RECIBO);
IF val = 0
THEN (-20502, ' Only from department 4 ');
END IF;
END ValidaRecibo;
但是,这会引发以下错误:
PLS-00103:预期以下其中一项时遇到符号“,”:
*&=-+ </> at in是mod余数,不是rem <>或!=或〜=> = <= <>或类似like2 like4在||之间 成员亚多集
如果val = 0,则raise_application_error(-20502,“仅来自部门6”);
然后您应该在DOC_TIPO和TIPO_DOC之间做出决定;)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句