我有一个带有IDENTITY列的表.在开发过程中,我会不时删除行并再次添加它们.但是当我再次添加它们时,IDENTITY值始终保持增加并且不从1开始.现在我的身份从68开始 – > 92这会使我的代码崩溃.
如何重置IDENTITY值?
解决方法
您可以重置身份值
DBCC CHECKIDENT('tableName',RESEED,0)
因此,下次插入TableName时,插入的标识值将为1.
从表中删除行时,它不会重置Identity值,但会不断增加它.就像你的情况一样.
现在,当您截断表时,它会将Identity值重置为其表的原始Seed值.
有关详细示例和Difference between Truncate and Delete的一些很好的解释,请参阅:SQL SERVER – DELETE,TRUNCATE and RESEED Identity