我使用恢复数据库并删除 my_table 中的记录
delete from my_table;
然后我使用这个查询重新设定表标识列:
DBCC CHECKIDENT('dbo.my_table', reseed, 0);
我得到的消息是:
但是,当我使用此查询检查当前身份时:
DBCC CHECKIDENT ('my_table', NORESEED);
我收到了这条消息:
所以,当我在表中插入记录时,第一次插入会给我一个错误,但如果我再试一次,则插入成功。
为什么我不能将当前标识列值设置为 0?我需要先在表中插入标识值 1。
最佳答案
相反,使用:
truncate table my_table;
这将自动重置标识列。 (另外,它会比使用
delete
删除行更快)引用:Truncate Table
关于sql - 将标识列重新设置为 0 失败 - 当前标识值为 NULL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20919655/