我创建了一个自动增量的主键。
ID=1, ID=2
ID=3
如何将自动增量重置或重启为1?
答案 0 :(得分:58)
如果您使用DBCC CHECKIDENT
命令:
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1);
但小心使用! - 这只会将IDENTITY
重置为1 - 因此您的下一次插入将获得值1,然后是2,然后是3 - >并且你将在这里与你原先存在的价值3发生冲突!
IDENTITY
只是按顺序列出数字 - 它确实不确保没有冲突!如果您已有值 - 请不重新设置为较低值!
答案 1 :(得分:17)
我正在使用 SQL Server 2012 ,而DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1)
会在下一次插入时导致值2
。
因此,对于SQL Server 2012,将1
更改为0
以获取下一个记录插入的值1
:
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 0); -- value will be 1 for the next record insert