oracle中sequence序列的使用__oracle

來源:互聯網
上載者:User

序列是一資料庫物件,利用它可產生唯一的整數。一般使用序列自動地產生主索引值。

1)建立序列命令

CREATE SEQUENCE [user.]sequence_name
[increment by n]
[start with n]
[maxvalue n | nomaxvalue]
[minvalue n | nominvalue];
[NOCYCLE]  --
INCREMENT BY:指定序號之間的間隔,該值可為正的或負的整數,但不可為0。序列為升序。忽略該子句時,預設值為1。
START WITH:指定產生的第一個序號。在升序時,序列可從比最小值大的值開始,預設值為序列的最小值。對於降序,序列可由比最大值小的值開始,預設值為序列的最大值。
MAXVALUE:指定序列可產生的最大值。
NOMAXVALUE:為升序指定最大值為1027,為降序指定最大值為-1。
MINVALUE:指定序列的最小值。
NOMINVALUE:為升序指定最小值為1。為降序指定最小值為-1026。
NOCYCLE:一直累加,不迴圈 2)更改序列命令

ALTERSEQUENCE [user.]sequence_name
[INCREMENT BY n]
[MAXVALUE n| NOMAXVALUE ]
[MINVALUE n | NOMINVALUE];
修改序列可以:
  修改未來序列值的增量。
設定或撤消最小值或最大值。
改變緩衝序列的數目。
  指定序號是否是有序。

注意:
1,第一次NEXTVAL返回的是初始值
2,可以alter除start至以外的所有sequence參數.如果想要改變start值,必須 drop sequence 再 re-create .

3)刪除序列命令

DROP SEQUENCE [user.]sequence_name;
用於從資料庫中刪除一序列。 4)牛刀小試

     4.1)建立一個序號的語句:

-- Create sequence
create sequence NCME_QUESTION_SEQ
minvalue 1
maxvalue 999999999999
start with 1
increment by 1
nocache;

4.2)SQL中取序號的用法:

SELECT NCME_QUESTION_SEQ.nextval FROM dual
SELECT NCME_QUESTION_SEQ.CURRVAL FROM dual


dual本身就是一個單詞,並非是某個片語的縮寫.名詞意為對數,形容詞為雙重的意思.在Oracle中dual指dual table,一個單行單列的虛擬表.
1: DUAL table-- a special kind of one-row and one-column database table;
2:dual is a table which is created by oracle along with the data dictionary. It consists of exactly one column whose name is dummy and one record. The value of that record is X.
3:Note that the outer query references the dummy table called dual the dual table is used in Oracle when you need to run SQL that does not logically have a table name.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.