现在忘记我创建时候的SQL代码了,不过这里有我从enterprise manager里找出来的DDL代码
CREATE TABLE "OPINION"."KEYWORDS"
( "ID" NUMBER(10),
"WORDS" VARCHAR2(255) NOT NULL ,
"ISKEYWORDS" NUMBER(1) DEFAULT 0 NOT NULL ,
"WORDS_FK" NUMBER(10),
"PRIORITY" NUMBER(1) DEFAULT 0 NOT NULL ,
CONSTRAINT "KEYWORDS_INNER_FK" FOREIGN KEY ("WORDS_FK") REFERENCES "OPINION"."KEYWORDS" ("ID") ON DELETE CASCADE VALIDATE ,
CONSTRAINT "KEYWORDS_PK" PRIMARY KEY ("ID") VALIDATE )
ORGANIZATION INDEX TABLESPACE "OPINION" INITRANS 2 MAXTRANS 255 STORAGE
( INITIAL 64K BUFFER_POOL DEFAULT)
LOGGING NOCOMPRESS CREATE SEQUENCE "OPINION"."KEYWORDS_PK_SEQ"
NOCYCLE
NOORDER
NOCACHE
NOMAXVALUE MINVALUE 1
INCREMENT BY 1
START WITH 1 CREATE OR REPLACE TRIGGER "OPINION".KEYWORDS_PK_TRIGGER
BEFORE
INSERT ON "OPINION"."KEYWORDS" REFERENCING OLD AS OLD NEW AS NEW
FOR EACH ROW
begin
select "OPINION"."KEYWORDS_PK_SEQ".nextval into :NEW.ID from dual;
end
执行以下代码报错
insert into "OPINION"."KEYWORDS" (WORDS, PRIORITY) values ('测试',1);Cause:
A trigger was attempted to be retrieved for execution and was found to be invalid.
This also means that compilation/authorization failed for the trigger.Action:
Options are to resolve the compilation/authorization errors, disable the trigger, or drop the trigger.
CREATE TABLE "OPINION"."KEYWORDS"
( "ID" NUMBER(10),
"WORDS" VARCHAR2(255) NOT NULL ,
"ISKEYWORDS" NUMBER(1) DEFAULT 0 NOT NULL ,
"WORDS_FK" NUMBER(10),
"PRIORITY" NUMBER(1) DEFAULT 0 NOT NULL ,
CONSTRAINT "KEYWORDS_INNER_FK" FOREIGN KEY ("WORDS_FK") REFERENCES "OPINION"."KEYWORDS" ("ID") ON DELETE CASCADE VALIDATE ,
CONSTRAINT "KEYWORDS_PK" PRIMARY KEY ("ID") VALIDATE )
ORGANIZATION INDEX TABLESPACE "OPINION" INITRANS 2 MAXTRANS 255 STORAGE
( INITIAL 64K BUFFER_POOL DEFAULT)
LOGGING NOCOMPRESS CREATE SEQUENCE "OPINION"."KEYWORDS_PK_SEQ"
NOCYCLE
NOORDER
NOCACHE
NOMAXVALUE MINVALUE 1
INCREMENT BY 1
START WITH 1 CREATE OR REPLACE TRIGGER "OPINION".KEYWORDS_PK_TRIGGER
BEFORE
INSERT ON "OPINION"."KEYWORDS" REFERENCING OLD AS OLD NEW AS NEW
FOR EACH ROW
begin
select "OPINION"."KEYWORDS_PK_SEQ".nextval into :NEW.ID from dual;
end
执行以下代码报错
insert into "OPINION"."KEYWORDS" (WORDS, PRIORITY) values ('测试',1);Cause:
A trigger was attempted to be retrieved for execution and was found to be invalid.
This also means that compilation/authorization failed for the trigger.Action:
Options are to resolve the compilation/authorization errors, disable the trigger, or drop the trigger.
看下触发器代码,是否和你上面贴的一致你触发器语句的end后面漏了个分号
不知是拷贝漏了还是原本就是这么写的
补上再重新编译试试