先创建一个序列:
create sequence seq1
start with 1
increament by 1;然后;
create trigger tri_on_ins
before insert
on table_name
for each row
begin
select seq1.nextval into :new.id;
end;
/
create sequence seq1
start with 1
increament by 1;然后;
create trigger tri_on_ins
before insert
on table_name
for each row
begin
select seq1.nextval into :new.id;
end;
/
1.创建sequence就可以
create sequence seq_name
minvalue 1
maxvalue 999999999999999999
start with 1
increment by 1
cache 20;
可以直接在插入时调用seq_name.nextval;
如insert into table_name(proid) values(seq_name.nextval);2.也可以创建触发器(同时要创建sequence):
create or replace trigger trg_name
before insert on table_name
for each row
begin
select seq_name.nextval into :new.proid from dual;
end;
/
MAXVALUE 1.0E28 MINVALUE 1 NOCYCLE
NOCACHE NOORDER;CREATE OR REPLACE TRIGGER USERADD
BEFORE INSERT ON MEMBERRG
FOR EACH ROW
BEGIN
SELECT LPAD(USERID.NEXTVAL,4,'0') INTO :NEW.NUM FROM DUAL;
END;