主键是自增长但是还是提示不能插入重复键

  今天客户那边的服务器被人强制关机了,然后系统就出问题了,明显是自增长的列但是却提示不能插入重复键

以下来自网络,

SQL 不能插入重复键-错误 主键列是自动增长

具体描述如下:
服务器: 消息 2627,级别 14,状态 1,行 1
违反了 PRIMARY KEY 约束 'PK_Student'。不能在对象 'Student' 中插入重复键。
语句已终止。

(我才用第二种才起作用)
 
产生原因:这个错误可能通过某个操作把自增列的种子给改小了,所以insert的时候报重复键错误。
解决方案:
1、直接在数据库上操作,取消自增长,再加上自增长,种子恢复正常。 但这种操作方式如果数据库比较大的话,会报超时的错误,可以使用第二种解决方案,通过语句来完成。
2、重置自动增长列种子: dbcc checkident('tb',reseed,业务表最大值+1) 第3个参数是业务表自动增长列最大值+1
posted @ 2014-12-15 16:56  南修子  阅读(1875)  评论(0编辑  收藏  举报