lz的trigger没有写完呢,没有结束,加上end;就可以了 --为此表创建一个触发器 strSql := 'CREATE OR REPLACE TRIGGER triID_plan_rzfx_project BEFORE INSERT ON plan_rzfx_project FOR EACH ROW BEGIN SELECT seqID_plan_rzfx_project.nextval INTO :NEW.ID FROM dual end;'; execute immediate strSql;
谢谢。我试了一下,加上end,运行时还是报错,错误提示如下: PLS-00103: 出现符号 "end-of-file"在需要下列之一时: ( begin case declare end exception exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge
不好意思,end前面少加了个分号; --为此表创建一个触发器 strSql := 'CREATE OR REPLACE TRIGGER triID_plan_rzfx_project BEFORE INSERT ON plan_rzfx_project FOR EACH ROW BEGIN SELECT seqID_plan_rzfx_project.nextval INTO :NEW.ID FROM dual; end;'; execute immediate strSql;
谢谢tx2730,我不明白的是:为什么要加上“end;”。
这是你的触发器原本代码 CREATE OR REPLACE TRIGGER triid_plan_rzfx_project BEFORE INSERT ON plan_rzfx_project FOR EACH ROW BEGIN SELECT seqid_plan_rzfx_project.NEXTVAL INTO :NEW.ID FROM DUAL; END; Trigger的语法可以参考: http://blog.csdn.net/BOBO12082119/article/details/6436660
--为此表创建一个触发器
strSql := 'CREATE OR REPLACE TRIGGER triID_plan_rzfx_project
BEFORE INSERT ON plan_rzfx_project FOR EACH ROW
BEGIN
SELECT seqID_plan_rzfx_project.nextval INTO :NEW.ID FROM dual end;';
execute immediate strSql;
PLS-00103: 出现符号 "end-of-file"在需要下列之一时: ( begin case declare end exception exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge
--为此表创建一个触发器
strSql := 'CREATE OR REPLACE TRIGGER triID_plan_rzfx_project
BEFORE INSERT ON plan_rzfx_project FOR EACH ROW
BEGIN
SELECT seqID_plan_rzfx_project.nextval INTO :NEW.ID FROM dual; end;';
execute immediate strSql;
CREATE OR REPLACE TRIGGER triid_plan_rzfx_project
BEFORE INSERT
ON plan_rzfx_project
FOR EACH ROW
BEGIN
SELECT seqid_plan_rzfx_project.NEXTVAL
INTO :NEW.ID
FROM DUAL;
END;
Trigger的语法可以参考:
http://blog.csdn.net/BOBO12082119/article/details/6436660