oracle 實現自增 建立、刪除觸發器 序列
阿新 • • 發佈:2019-01-08
select * from YLXZ_PERSON
insert into YLXZ_PERSON(name) VALUES('噓噓')
DELETE from YLXZ_PERSON where name ='噓噓'
update YLXZ_PERSON set id=NULL
//建立序列
CREATE SEQUENCE PERSON_sequence
INCREMENT BY 1 -- 每次加幾個
START WITH 36 -- 從1開始計數
NOMAXVALUE -- 不設定最大值
NOCYCLE -- 一直累加,不迴圈
NOCACHE -- 不建緩衝區
//建立觸發器
CREATE TRIGGER PERSON_trigger
BEFORE INSERT ON YLXZ_PERSON
FOR EACH ROW
WHEN (new.id is null) --只有在id為空時,啟動該觸發器生成id號
begin
select PERSON_sequence.nextval into :new.id from sys.dual;
end;
DROP TRIGGER PERSON_trigger --刪除觸發器
DROP SEQUENCE PERSON_sequence --刪除序列