主要是利用 序列和触发器
创建序列
create sequence XXX ------XXX为序列名
minvalue 1
maxvalue 99
start with 1 increment by 1 nocache;
创建触发器
create or replace trigger tri_test_id --- tri_test_id 为触发器名
before insert on T_XXXXX --T_XXXXX 是表名
for each row
declare
nextid number;
begin
IF :new.ID IS NULL or :new.ID=0 THEN --ID是列名
select SEQ_XXX .nextval --SEQ_XXX为序列名
into nextid from sys.dual; :new.ID:=nextid;
end if;
end tri_test_id;
网友评论