SQL Sever2012新特性:序列

Oracle很早就可以使用序列了: 点击打开链接

SQL Server 从 2012 起才可以使用序列: msdn

对比起大家熟悉的 identity 来, 它有这样一些好处:

1. 可以用于多个表;

2. 可以直接 select , 不必牵扯到 insert 。

相同点:可以定义起始值、步长。 但可以定义是否循环。

格式:

CREATE SEQUENCE [schema_name . ] sequence_name
    [ AS [ built_in_integer_type | user-defined_integer_type ] ]
    [ START WITH <constant> ]
    [ INCREMENT BY <constant> ]
    [ { MINVALUE [ <constant> ] } | { NO MINVALUE } ]
    [ { MAXVALUE [ <constant> ] } | { NO MAXVALUE } ]
    [ CYCLE | { NO CYCLE } ]
    [ { CACHE [ <constant> ] } | { NO CACHE } ]
    [ ; ]

USE tempdb
GO
IF EXISTS (SELECT * FROM sys.sequences AS s WHERE s.name='seq_Test')
DROP sequence seq_Test
GO
CREATE SEQUENCE seq_Test START WITH 1 INCREMENT BY 1 ;

SELECT NEXT VALUE FOR seq_Test AS r
/*
r
1
*/


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值