標籤:
一、序列的簡介 序列是一資料庫物件,利用它可產生唯一的整數。一般使用序列自動地產生主碼值。一個序列的值是由特別的Oracle程式自動產生,因而序列避免了在運用層實現序列而引起的效能瓶頸。Oracle序列允許同時產生多個序號,而每一個序號是唯一的。 當一個序號產生時,序列是遞增,獨立於事務的提交或復原。 二、建立序列drop table student cascade constraints;create table student(sid int not null primary key,sno number(12),sname varchar2(32),address varchar2(64),birthday date); 格式:create sequence stu_seq --序列名increment by 1 -- 每次加幾個start with 1 -- 從1開始計數,初始值nomaxvalue/maxvalue n/minvalue n -- 不設定最大值/最大/最小nocycle/cycle -- 一直累加,不迴圈/迴圈cache 10/nocache; --緩衝幾個值,預設20 例子:create sequence stu_seqincrement by 1start with 1minvalue 1maxvalue 999999999nocyclecache 10 三、查詢序列nextval: 返回序列中下一個有效值,任何使用者都可以引用currval: 中存放序列的當前值 例子:selectstu_seq.nextval "nextval",stu_seq.currval "currval"from dual; insert into student(sid,sno,sname,address)values(stu_seq.nextval,1001,‘張三‘,‘北京海澱‘) 四、修改序列alter sequence 序列名[increment by n][{maxvalue/ minvalue n|nomaxvalue}][{cycle|nocycle}][{cache n|nocache}];不能修改序列的初始值 五、刪除序列drop sequence 序列名;
ORACLE學習06-序列