【发布时间】:2017-06-07 04:19:54
【问题描述】:
我的表在 SQL Server 中有一个基于 int 的标识列。
由于我已从该表中删除条目,id 不再从 1 开始。
如何将表格的 id 列重置为 1?
【问题讨论】:
标签: sql-server primary-key identity
我的表在 SQL Server 中有一个基于 int 的标识列。
由于我已从该表中删除条目,id 不再从 1 开始。
如何将表格的 id 列重置为 1?
【问题讨论】:
标签: sql-server primary-key identity
这实际上不是错误,而是 SQL Server 2012 的一个功能。当您重新启动 SQL 实例时,就会发生这种情况。
跳跃值取决于数据类型,对于int,它是1000,对于bigint,它是10,000。 (这是为identity 分配的缓存,在实例重启时会丢失)
请参阅此link 以获得首选解决方案。
【讨论】:
如果您想从表中删除所有条目并将标识重置为 1(或任何其初始种子值),您可以使用 TRUNCATE TABLE 命令而不是 DELETE。
【讨论】: