我创建了表来存储有关任何更新时间的信息,在其中一个表中插入或删除数据。
CREATE TABLE dept_changes ( data DATE, action VARCHAR2(16) );
现在我想创建触发器将数据输入到表中:
CREATE OR REPLACE TRIGGER dept_changes_trig AFTER UPDATE OR INSERT OR DELETE ON departments
DECLARE
action VARCHAR2(16);
BEGIN
IF UPDATING THEN
action:='upd';
END IF;
IF INSERTING THEN
action:='ins';
END IF;
IF DELETING THEN
action:='del';
END IF;
INSERT INTO DEPT_CHANGES (SYSDATE, action);
END;
我在第12行遇到了2个错误(DELETING条件语句的END IF)。
Error(12,5): PL/SQL: SQL Statement ignored
Error(12,46): PL/SQL: ORA-00926: missing VALUES keyword
我不明白,我错过了什么VALUES
?触发器需要什么才能正常工作?