Sql Server增加Sequence序列语句

1.创建序列

下面的示例创建名为 DecSeq 使用一个序列 十进制 具有介于 0 到 255 之间的数据类型。序列以 125 开始,每次生成数字时递增 25。 因为该序列配置为可循环,所以,当值超过最大值 200 时,序列将从最小值 100 重新开始。

CREATE SEQUENCE Test.DecSeq  
    AS decimal(3,0)   
    START WITH 125  
    INCREMENT BY 25  
    MINVALUE 100  
    MAXVALUE 200  
    CYCLE  
    CACHE 3 
;

Test.DecSeq:指定数据库中标识序列的唯一名称。 类型是 sysname。

decimal:序列可定义为任何整数类型。 允许使用下面的类型。  
  tinyint -0 到 255 范围

  smallint -范围-32,768 到 32,767

  int -范围-2,147,483,648 到 2,147,483,647

  bigint -范围-9223372036854775808 到 9223372036854775807

  十进制 和 数值 小数位数为 0。

  如果未不提供任何数据类型, bigint 数据类型用作默认值。
START WITH:启动值 <常量> ,序列对象返回的第一个值。启动 值必须是值小于或等于最大值并大于或等于序列对象的最小值。 新序列对象的默认起始值是升序序列对象的最小值和降序序列对象的最大值。

INCREMENT:增量值<常量>,该值用于递增(或递减),每次调用序列对象的值 NEXT VALUE FOR 函数。 如果增量是负值,则序列对象为降序,否则为升序。 增量不能为 0。 新序列对象的默认增量为 1。

MINVALUE:指定序列对象的边界。 一个新序列对象的默认最小值是该序列对象的数据类型的最小值。 对于 tinyint 数据类型,此值为零,对于所有其他数据类型则为负数。

MAXVALUE:指定序列对象的边界。 一个新序列对象的默认最大值是该序列对象的数据类型的最大值。

CYCLE:[周期 | NO CYCLE]此属性指定当超过序列对象的最小值或最大值时,序列对象是应从最小值(对于降序序列对象,则为最大值)重新开始,还是应引发异常。 新序列对象的默认循环选项是 NO 。请注意,循环不从起始值重新开始,而是从最小值或最大值重新开始。

CACHE:缓存<常量> 通过最大限度地减少生成序列编号所需的磁盘 IO 数,可以提高使用序列对象的应用程序的性能。 默认值为 CACHE。

2.查询序列

SELECT * FROM sys.sequences WHERE name = 'DecSeq' ;

3.获取序列值(注意:每查询一次,value的值就会增加1,这个1是根据创建序列时,increment设置的值有关,新建的序列第一次查询时得到的值为start值)

SELECT NEXT VALUE FOR Test.DecSeq;  

4.删除序列

DROP sequence Test.DecSeq;

 

转载于:https://www.cnblogs.com/pangpanghuan/p/6473169.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值