oracle實現主鍵自增


首先,創建一張表:

CREATE TABLE example(
 
ID Number(4) NOT NULL PRIMARY KEY,
 
NAME VARCHAR(25));

然后,自定義一個序列(sequence):

CREATE SEQUENCE example_sequence
 
INCREMENT BY 1 -- 每次加幾個
 
START WITH 1 -- 從1開始計數
 
NOMAXVALUE -- 不設置最大值
 
NOCYCLE -- 一直累加,不循環
 
NOCACHE -- 不建緩沖區

再創建一個觸發器:

CREATE TRIGGER example_triger BEFORE
 
INSERT ON example FOR EACH ROW WHEN (new.id is null)--只有在id為空時,啟動該觸發器生成id號
 
begin
 
select example_sequence.nextval into: new.id from dual;
 
end;

測試一下,插入數據

insert into example(name) values('張三');
 
insert into example(id, name) values(111,'李四');

輸入查詢語句:

select t.* from EXAMPLE t

結果是:

id name
1 張三
111 李四

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM