DBCC CHECKIDENT (TableName, RESEED, 0)

解决方案 »

  1.   


    或者清空的时候使用
    TRUNCATE TABLE TableName来清空数据
      

  2.   

    哦,你说得确实不是很清楚呀~~
    第一种情况:
    如果你是现在表中已经存在标识列的话,然后删除表中数据后,想重新恢复表中标识列的初始值的话,你可以使用 truncate table table1 来删除表中的数据,因为只有使用这个语句,才可以做你你删除表中所有记录后,再添加新记录时,第一条记录将自动使用标识列的初值的。第二种情况,你如果你表中根本就没有标识列的话,你删除所有记录后,想使用标识的话,你可以对现有的表修改它的结构。示例:向原有表中,增加一列id 并将该列定义为标识列
    alter table table1 
    add id int identity(1,1)这样你就可以向表中增加数据时,第一条记录就可以直接使用标识的初值啦。或者你也可以借用临时表。
    示例 :select identity(int,1,1) id, * into #a from table1 
    drop table table1
    select * into table1 from #a 
    drop table #a 
     
    这样做也是可以的
      

  3.   

    DBCC CHECKIDENT
    检查指定表的当前标识值,如有必要,还对标识值进行更正。