Oracle數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng)列的實(shí)現(xiàn)過程
Oracle數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng)列的實(shí)現(xiàn)過程:
1.創(chuàng)建序列
-- Create sequence
create sequence INNERID
minvalue 1
maxvalue 99999999999999
start with 1
increment by 1
cache 20
order;
2.--INNERID.currval 指當(dāng)前序列
--INNERID.nextval 指下一個(gè)序列
insert into admin values (INNERID.nextval,'a');
insert into admin values (INNERID.nextval,'b');
insert into admin values (INNERID.nextval,'c');
insert into admin values (INNERID.nextval,'d');
create table admin
(id varchar2(20),name varchar2(10));
--不斷的插入序列的下一個(gè)值.
3.創(chuàng)建觸發(fā)器(注:此處無法設(shè)置id的默認(rèn)值為INNERID.nextval )
CREATE OR REPLACE TRIGGER admin_tg
--admin id 的觸發(fā)器
BEFORE INSERT ON admin FOR EACH ROW
BEGIN
SELECT INNERID.NEXTVAL INTO :NEW.id FROM DUAL;
END;
測(cè)試語句如下:
insert into admin (username) values ( 'zdz');
成功插入數(shù)據(jù),再查看數(shù)據(jù),你可以發(fā)現(xiàn)id自動(dòng)增長(zhǎng)了,此問題至此解決!
上文介紹的關(guān)于Oracle數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng)列的實(shí)現(xiàn)過程的知識(shí)在現(xiàn)代的辦公中是非常實(shí)用的,希望大家都能很好的掌握這些知識(shí),相信在以后的工作中肯定會(huì)對(duì)大家有幫助。
【編輯推薦】