Plsql 错误ORA-04079:触发器规范无效

Plsql 错误ORA-04079:触发器规范无效,plsql,oracle11g,triggers,Plsql,Oracle11g,Triggers,在一个触发器中可以有多个表吗?假设我有员工、技能和客户表,我有Eventlogs表来捕获审计。我试图增加技能,但我得到了ORA-04079错误。有什么更正吗?谢谢大家! 注意:我使用的是Oracle SQL Developer Oracle11gEE CREATE OR REPLACE TRIGGER AUDIT_REC AFTER INSERT OR DELETE OR UPDATE ON EMPLOYEE_T, SKILL_T FOR EACH ROW DECLARE V_LOGID N

在一个触发器中可以有多个表吗?假设我有员工、技能和客户表,我有Eventlogs表来捕获审计。我试图增加技能,但我得到了ORA-04079错误。有什么更正吗?谢谢大家!

注意:我使用的是Oracle SQL Developer Oracle11gEE

CREATE OR REPLACE TRIGGER AUDIT_REC
AFTER INSERT OR DELETE OR UPDATE ON EMPLOYEE_T, SKILL_T
FOR EACH ROW
DECLARE
  V_LOGID NUMBER;
    V_USER  VARCHAR(30);
    V_DATE  VARCHAR(30);

BEGIN
  SELECT EVENTLOG_ID_SEQ.NEXTVAL, USER, SYSDATE INTO V_LOGID, V_USER, V_DATE FROM DUAL;
  IF INSERTING THEN
    INSERT INTO EVENTLOGS(Eventlog_id, User_name, Date_done, Action_done)
    VALUES (V_LOGID, V_USER, V_DATE, 'INSERT');
  ELSIF DELETING THEN
    INSERT INTO EVENTLOGS(Eventlog_id, User_name, Date_done, Action_done)
    VALUES (V_LOGID, V_USER, V_DATE, 'DELETE');
  ELSIF UPDATING THEN
    INSERT INTO EVENTLOGS(Eventlog_id, User_name, Date_done, Action_done)
    VALUES (V_LOGID, V_USER, V_DATE, 'UPDATE');
  END IF;
END;
/

DML触发器仅与一个表关联(绑定)。它仅在针对该表提交DML时执行。

谢谢你,赫曼特。现在,我将为每个表创建一个触发器。