利用序列產生主鍵值。
序列(Sequence)是一種可以被多個用戶使用的用於產生一系列唯一數字的數據庫對象。序列定義存儲在數據字典中,通過提供唯一數值的順序表來簡化程序設計工作,可以使用序列自動產生主鍵的鍵值。當一個序列第一次被查詢調用時,它將返回一個預定值。在隨後的每次查詢中,序列將產生一個按指定的增量增長的值。序列可以循環,或者是連續增加的,直到指定的最大值為止。
復制代碼 代碼如下:
--創建sequence
create sequence seq_on_test
increment by 1
start with 1
nomaxvalue
nocycle
nocache;
--建表
drop table test;
create table test(
ID integer
,stu_name nvarchar2(4)
,stu_age number
);
--插入數據
insert into test values(seq_on_test.nextval,'Mary',15);
insert into test values(seq_on_test.nextval,'Tom',16);
select * from test;
--結果
/*
1 Mary 15
2 Tom 16
*/
--seq的兩個方法
select seq_on_test.currval from dual;
select seq_on_test.nextval from dual;
--結果
/*
2
3
*/