位置:首頁 > 數據庫 > DB2教學 > DB2序列

DB2序列

本章介紹了序列,創建序列的概念,查看序列和刪除它們。

序列是一個軟件功能,其生成整數升序或降序排列,在一個確定的範圍內,以產生主鍵和表之間協調其他密鑰。序列可以使用整數,如雇員標識或transaction_id。序列可以支持SMALLINT,BIGINT,INTEGER和DECIMAL數據類型。序列可以在多個應用程序之間共享。序列遞增或遞減無關事務。

一個序列是由CREATE SEQUENCE語句創建。

序列類型

有兩種類型的可用序列:

  1. NEXTVAL: 它返回序列號的遞增值。
  2. PREVIOUS VALUE: 它返回最近生成值

序列參數

下麵的參數用於序列:

數據類型:這是返回遞增值的數據類型。 (SMALLINT,BIGINT,INTEGER,NUMBER,DOUBLE)

開始於:基準值時,該序列的開始。

最小值: 一個序列開始的最小值。

最大值: 一個序列最大值。

增量: 通過該序列遞增步長值。

順序循環:在循環子句導致代序列的重複。該序列產生通過參考該返回的值,被存儲到由前一個序列生成的數據庫進行的。

創建序列

可以使用以下語法創建順序:

語法:

db2 create sequence <seq_name> 

例如:[創建一個名為'sales1_seq“和新序列增加值為1]

db2 create sequence sales1_seq as int start 
with 1 increment by 1  

查看序列

可以查看使用下麵給出序列的語法:

語法:

db2 value <previous/next> value for <seq_name>

例如:[查看以前更新序列“sales1_seq"的值的列表]

db2 values previous value for sales1_seq  

輸出

 1 
----------- 
  4 
  1 record(s) selected. 

刪除序列

要刪除序列,則需要使用“DROP SEQUENCE”命令。

語法:

db2 drop sequence <seq_name>>

例如:[從數據庫中刪除序列'sales1_seq']

db2 drop sequence sales1_seq  

輸出

 DB20000I The SQL command completed successfully.