Oracle创建触发器实现主键自增

CREATE OR REPLACE TRIGGER "trigger_empl"
   before insert on extjsTest1.t_empl
   for each row
begin
   if inserting then
      if :NEW."EID" is null then
         select SEQ_EMPL.nextval into :NEW."EID" from dual;
      end if;
   end if;
end;

说明:trigger_empl是自定义触发器的名字,extjsTest1是用户名,t_empl是指定的表名,EID是t_empl中的主键名。

注意:EID一定要大写!否则无法成功创建触发器。

简洁准确的写法:

CREATE OR REPLACE TRIGGER TRIGGER_TNEWCHILDSTRATEGY

BEFORE   INSERT   ON   TNEWCHILDSTRATEGY

FOR   EACH   ROW

BEGIN

SELECT   SEQ_NEWCHILDSTRATEGY.NEXTVAL   INTO   :NEW.ICHILDSTRATEGYID   FROM   DUAL;

END;
原文地址:https://www.cnblogs.com/wql025/p/4865643.html