Oracle數據庫中創建自增字段的方法是本文我們主要要介紹的內容,我們知道,在Oracle數據庫中,沒有Oracle自增字段這樣的功能,但是通過觸發器(trigger)和序列(sequence)可以實現。
假設[表test]關鍵字段為id,接下來我們就來介紹一下創建過程:
創建一個序列,代碼為:
- createsequenceseq_test
- minvalue1--最小值
- maxvalue99999999999--最大值
- startwith1--從1開始計數
- incrementby1--每次加幾個
- nocache--沒緩存
- order;
創建觸發器的代碼為:
- createorreplacetriggertri_test
- beforeinsertontest
- foreachrow
- declare
- nextidnumber;
- begin
- IF:new.idISNULLor:new.id=0THEN
- selectseq_test.nextval
- intonextid
- fromsys.dual;
- :new.id:=nextid;
- endif;
- endtri_test;
關鍵字:NEW 和OLD使用方法和意義,new 只出現在insert和update時,old只出現在update和delete時。在insert時new表示新插入的行數據,update時new 表示要替換的新數據、old表示要被更改的原來的數據行,delete時old表示要被刪除的數據。