SQL Server 2012 SEQUENCE 對(duì)象

oracle中有sequence的功能,SQL Server類似的功能使用Identity列實(shí)現(xiàn),但是有很大的局限性。在2012中,微軟終于增加了 sequence 對(duì)象,功能和性能都有了很大的提高。 我們可以在SSMS中創(chuàng)建也可以使用SQL Server腳本創(chuàng)建序列對(duì)象: 使用SQL創(chuàng)建序列對(duì)象: IF E

Oracle中有sequence的功能,SQL Server類似的功能使用Identity列實(shí)現(xiàn),但是有很大的局限性。在2012中,微軟終于增加了 sequence 對(duì)象,功能和性能都有了很大的提高。

我們可以在SSMS中創(chuàng)建也可以使用SQL Server腳本創(chuàng)建序列對(duì)象:

使用SQL創(chuàng)建序列對(duì)象:

IF EXISTS(SELECT*FROMsys.sequencesWHEREname=N’TestSeq’)

??????????????? DROP SEQUENCETestSeq;

GO

–創(chuàng)建序列對(duì)象

CREATE SEQUENCETestSeqAStinyint

??????????????? START WITH1

??????????????? INCREMENT BY1;

GO

–創(chuàng)建表

CREATE TABLE TEST

(ID tinyint,? Namevarchar(150))

–產(chǎn)生序列號(hào)碼并插入表中

INSERT INTO TEST

(ID,Name)

VALUES

(NEXT VALUE FOR TestSeq,’allen’)

INSERT INTO TEST

(ID,Name)

VALUES

(NEXT VALUE FOR TestSeq,’kevin’)

SELECT * FROM TEST

–產(chǎn)生序列可以重復(fù)使用,下面的例子當(dāng)序列號(hào)碼超過255后

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊5 分享