在SQL Server中,标识列会自动递增1000而不是1吗?

时间:2013-11-21 04:04:41

标签: sql sql-server sql-server-2012

我在SQL Server 2012中有一个表:

CREATE TABLE [dbo].[T] (
    [TId] INT IDENTITY (1, 1) NOT NULL,
    ...
    [ModifiedDate] DATETIME NOT NULL
);

我理解标识列的概念是增加1,但我注意到对于这个特定表,它似乎总是增加1000.有人可以告诉我为什么会这样吗?我有其他表格,据我所知,其他表只增加1。

1 个答案:

答案 0 :(得分:2)

这是前面报告的SQL Server错误

https://connect.microsoft.com/SQLServer/feedback/details/739013/failover-or-restart-results-in-reseed-of-identity

描述

如果具有少于1000行的具有标识值的表是在AlwaysOn可用性组中进行故障转移的数据库的一部分,则该标识将重新接种为1000.如果标识值已超过1000,则不会发生重新设定

如果重新启动服务器,也会发生这种情况。