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后