利用觸發器自動創建序列

創建序列代碼:

--創建sequence
CREATE SEQUENCE test_sequence
INCREMENT BY 1   -- 每次加幾個
START WITH 1    -- 從1開始計數
NOMAXVALUE    -- 不設置最大值
NOCYCLE      -- 一直累加,不循環
CACHE 10 ;


創建觸發器代碼:

create or replace trigger tri_test_id
before insert on test --test 是表名
for each row
declare
nextid number;
begin
IF :new.id IS NULLor :new.id=0 THEN --id是列名
select test_sequence.nextval --SEQ_ID正是剛纔創建的
into nextid
from sys.dual;
:new.id:=nextid;
end if;
end tri_test_id;
發佈了40 篇原創文章 · 獲贊 1 · 訪問量 1657
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章