create sequence s;create or replace trigger tri_id before insert on tbname for each row
begin
  select s.nextval into :new.n_id from dual;
end;

解决方案 »

  1.   

    自动给号,在Oracle中,是通过序号+触发器来实现的建一个序列create sequence a_seq increment by 1 start with 100;建一个触发器create or replace trigger t_abefore insert on afor each rowbeginselect s_a.nextval into :new.b from dual;end;
      

  2.   

    yxxx(小孬) ( ) 信誉:100 已经说的够清楚了!!
      

  3.   

    --序号
    DROP SEQUENCE SEQ_USER;
    CREATE SEQUENCE SEQ_USER
    INCREMENT BY 1
    MINVALUE 1
    MAXVALUE 99999999999999
    NOCYCLE 
    NOCACHE
    ORDER;
    COMMIT;--触发器
    CREATE OR REPLACE TRIGGER TRG_ADDUSER
    BEFORE INSERT ON T_USERINFO
    FOR EACH ROW
    BEGIN 
      SELECT SEQ_USER.NEXTVAL  INTO :NEW.n_id  FROM DUAL;
    END TRG_ADDUSER;