技术开发 频道

Oracle数据库的完整性约束规则

  序列(Sequences)

  Oracle序列是一个连续的数字生成器。序列常用于人为的关键字,或给数据行排序否则数据行是无序的。像约束一样,序列只存在于数据字典中。序列号可以被设置为上升、下降,可以没有限制或重复使用直到一个限制值。创建序列使用SET SEQUENCE语句。

CREATE SEQUENCE [schema] sequence KEYWORD

  KEYWORD包括下面的值:

 

KEYWORD 描述
START WITH 定义序列生成的第一个数字,缺省为1
INCREMENT BY 定义序列号是上升还是下降,对于一个降序的序列INCREMENT BY为负值
MINVALUE 定义序列可以生成的最小值,这是降序序列中的限制值。缺省情况下该值为NOMINVALUE,NOMINVALUE,对于升序为1,对于降序为-10E26.
MAXVALUE 序列能生成的最大数字。这是升序序列中的限制值,缺省的MAXVALUE为NOMAXVALUE,NOMAXVALUE,对于升序为10E26,对于降序为-1。
CYCLE 设置序列值在达到限制值以后可以重复
NOCYCLE 设置序列值在达到限制值以后不能重复,这是缺省设置。当试图产生MAXVALUE+1的值时,将会产生一个异常
CACHE 定义序列值占据的内存块的大小,缺省值为20
NOCACHE 在每次序列号产生时强制数据字典更新,保证在序列值之间没有间隔当创建序列时,START WITH值必须等于或大于MINVALUE。

  删除序列使用DROP SEQUENCE语句

DROP SEQUENCE sequence_name
0
相关文章