Oracle 基礎——序列

來源:互聯網
上載者:User

標籤:sql文法   tar   9.png   指定   create   建立序列   最大   基礎   mil   

一、什麼是序列

  序列是用於產生唯一、連續序號的對象。序列可以是升序的,也可以是降序的,Oracle使用者想建立序列必須有建立序列的角色許可權。

二、建立序列的SQL文法

  建立序列:CREATE SEQUENCE SEQ_NAME START WITH n INCREMENT BY n2 MAXVALUE n3 MINVALUE n4 NOCYCLE(或者CYCLE) CACHE n5

  刪除序列:DROP SEQUENCCE SEQ_NAME

  查看序列的當前值:SELECT SEQ_NAME.CURRVAL FROM DUAL(第一次查看序列中的值時候,只能使用NEXTVAL查看,不曾使用CURRVAL)

  查看序列的下一個值:SELECT SEQ_NAME.NEXTVAL FROM DUAL

  (1)SEQ_NAME:序列對象名

  (2)n:第一個開始的序號

  (3)n2:序號之間的間隔

  (4)n3:序號的最大值

  (5)n4:序號的最小值

  (6)n5:指定記憶體中預先分配的序號個數,從當前序號開始算起個數(Oracle11gR2中預設為20)

  (7)NOCYCLE:表示在達到最大值後停止產生下一個值

  (8)CYCLE:表示在達到最大值後繼續迴圈從n開始產生序號

  (9)必須滿足的條件:n>=n4,n<=n3,n3>=n4,n5<=(n3-n)

三、效果示範

  1、建立一個序列名SEQ_1開始值為1,最大值為5,並且依次遞增1 NOCYCLE,SQL語句如下:

1 CREATE SEQUENCE SEQ_1 START WITH 1 INCREMENT BY 1 MAXVALUE 5 MINVALUE 1 NOCYCLE CACHE 10;

  1-1所示,成功建立序列SEQ_1,並且第一次查看序列中的值只能用NEXTVAL。1-2所示,當序列值達到最大值5時,停止產生下一個值

  

                        圖 1-1

  

                         圖 1-2

  2、建立一個序列名SEQ_2開始值為1,最大值為5,並且依次遞增1 CYCLE,SQL語句如下: 

  

1 CREATE SEQUENCE SEQ_2 START WITH 1 INCREMENT BY 1 MAXVALUE 5 MINVALUE 1 CYCLE CACHE 4;

  2-1所示,成功建立序列SEQ_1,查看序列當前值用CURRVAL。2-2所示,當序列值達到最大值5時,迴圈產生開始值

  

                        圖 2-1

  

                       圖 2-2

  3、刪除序列SEQ_1、SEQ_2,3-1所示

  

                      圖 3-1

  

  明天又要上班了,嗚嗚嗚嗚嗚。。。。

Oracle 基礎——序列

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.