我有一个使用SQL server作为后端的.NET应用程序,它已经运行了大约10年。由于某种原因,在过去的2-3个月里,它已经决定跳过990左右的身份号码(我想已经有997两次,989一次)3次。我想不出系统做的任何活动会生成记录,然后删除它们或尝试插入那么多次。这是一个非常断断续续的问题,但它非常奇怪,我想弄清楚它的真相。有没有人有什么办法可以找到原因?
该系统是不同技术的混合体--旧的是ADO.NET,新的是Linq to SQL。我不认为记录每条执行的语句或任何东西是可行的,因为它是一个具有大量用户的相当活跃的系统。
发布于 2013-04-18 17:36:11
这是正常的-如果由于违反约束而尝试更新失败(例如,由于尝试将NULL插入到不可为空的列中,或者由于不存在的外键),标识字段将增加,但不会插入行。
下一个插入的行(假设它不会失败)将增加标识并插入,留下一个“间隙”。
这不是问题。
https://stackoverflow.com/questions/16079321
复制相似问题