本章介紹了序列,創(chuàng)建序列的概念,查看序列和刪除它們。
序列是一個(gè)軟件功能,其生成整數(shù)升序或降序排列,在一個(gè)確定的范圍內(nèi),以產(chǎn)生主鍵和表之間協(xié)調(diào)其他密鑰。序列可以使用整數(shù),如雇員標(biāo)識或transaction_id。序列可以支持SMALLINT,BIGINT,INTEGER和DECIMAL數(shù)據(jù)類型。序列可以在多個(gè)應(yīng)用程序之間共享。序列遞增或遞減無關(guān)事務(wù)。
一個(gè)序列是由CREATE SEQUENCE語句創(chuàng)建。
有兩種類型的可用序列:
下面的參數(shù)用于序列:
數(shù)據(jù)類型:這是返回遞增值的數(shù)據(jù)類型。 (SMALLINT,BIGINT,INTEGER,NUMBER,DOUBLE)
開始于:基準(zhǔn)值時(shí),該序列的開始。
最小值: 一個(gè)序列開始的最小值。
最大值: 一個(gè)序列最大值。
增量: 通過該序列遞增步長值。
順序循環(huán):在循環(huán)子句導(dǎo)致代序列的重復(fù)。該序列產(chǎn)生通過參考該返回的值,被存儲到由前一個(gè)序列生成的數(shù)據(jù)庫進(jìn)行的。
可以使用以下語法創(chuàng)建順序:
語法:
db2 create sequence <seq_name>
例如:[創(chuàng)建一個(gè)名為'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.
要?jiǎng)h除序列,則需要使用“DROP SEQUENCE”命令。
語法:
db2 drop sequence <seq_name>>
例如:[從數(shù)據(jù)庫中刪除序列'sales1_seq']
db2 drop sequence sales1_seq
輸出
DB20000I The SQL command completed successfully.