DB2 - 序列
本章向您介绍序列的概念、序列的创建、查看序列以及删除序列。
简介
序列是一种软件功能,它在一定范围内按升序或降序生成整数,以生成主键并协调表中的其他键。 您可以使用序列来获取整数,例如,employee_id 或 transaction_id。 序列可以支持 SMALLINT、BIGINT、INTEGER 和 DECIMAL 数据类型。 序列可以在多个应用程序之间共享。 无论事务如何,序列都会递增或递减。
序列由 CREATE SEQUENCE 语句创建。
序列类型
有两种类型的序列可用:
NEXTVAL:它返回序列号的递增值。
PREVIOUS VALUE:返回最近生成的值。
序列参数
以下参数用于序列:
数据类型:这是返回的递增值的数据类型。 (SMALLINT、BIGINT、整数、数字、双精度)
START WITH:参考值,序列以此开始。
MINVALUE:序列开始的最小值。
MAXVALUE:序列的最大值。
INCRMENT BY:序列递增的步长值。
序列循环:CYCLE子句导致序列重复生成。 序列生成是通过引用返回值来进行的,该返回值是先前序列生成存储到数据库中的。
创建序列
您可以使用以下语法创建序列:
语法:
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.