由于oracle中沒有類似SQL Server中的自增字段,所以我們如果想要通過設定類似ID性質的唯一列的話,需要借助Oracle的sequence,先建立一個序列,然后在每次插入數據的時候,通過前觸發器來更新ID值,并將序列的序號加1,這樣的迂回方式來實現。
相關代碼如下:
1. 創建sequence:
代碼如下:
CREATE SEQUENCE SEQU_DATA_DATAINFO INCREMENT BY 1 START WITH 1 NOCYCLE NOCACHE NOORDER;
2. 創建觸發器:
代碼如下:
create or replace TRIGGER TRIG_TEST
BEFORE INSERT ON TABLE1
FOR EACH ROW
DECLARE
tmpVar NUMBER;
BEGIN
tmpVar := 0;
Select SEQU_PROC_ASSOCIATEINFO.NextVal into tmpVar from dual;
:new.procid:=tmpVar;
EXCEPTION
WHEN OTHERS THEN
— Consider logging the error and then re-raise
RAISE;
END;
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END