Oracle中的Sequence
阿新 • • 發佈:2018-10-31
Sequence是資料庫系統按照一定的規則自動增加的數字序列,主要用於生成資料庫資料記錄。這個序列一般作為代理主鍵(因為不會重複)。
新建Sequence:
-- create sequence create sequence SEQ_sailingTest minvalue 1 maxvalue 9999999 start with 1 increment by 1 --遞增間隔 cache 20; --nocache
表中插入資料使用Sequence:
--SEQ.nextval,SEQ.currval
insert into sailing_test(id,name) values (SEQ_sailingTest.nextval,sailing);
--currVal:返回 sequence的當前值
--nextVal: 增加sequence的值,然後返回 增加後sequence值
修改/刪除sequence:
--alert sequence: alert sequence SEQ_sailingTest minvalue 1 maxvalue 100000 start with 99 increment by 2 --遞增間隔 nocache; --drop sequence: drop sequence SEQ_sailingTest;
查詢sequence:
--查詢當前使用者的序列
select * from user_sequences
--查詢所有的序列
select * from all_sequences
--模糊查詢某序列
elect * from user_sequences where sequence_name like '%sailingTest%'