oracle触发器无效且未通过重新验证

CREATE SEQUENCE emp_sequence
  INCREMENT BY 1
  START WITH 1
  NOMAXVALUE
  NOCYCLE
  NOCACHE

CREATE TABLE example(
  ID Number(4) NOT NULL PRIMARY KEY,
  NAME VARCHAR(25),
  PHONE VARCHAR(10),
  ADDRESS VARCHAR(50) )

CREATE TRIGGER "emp_trigger" BEFORE
  INSERT ON example FOR EACH ROW WHEN (new.id is null)
  begin
  select emp_sequence.nextval into: new.id from dual;
  end;
执行的sql: INSERT INTO example(Name,phone,address) Values('Tom','123456','BeiJing');的时候报触发器错误,怎么解决触发器错误?

与触发器相关的表结构或是其他内容发生了改变。
这时候触发器需要重新编译,如果没有编译,就会是无效状态。

你把触发器重新生成一下,可能就可以了。追问

我是空的数据库,里面没有表,我就执行以上的代码,报的错误

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答