【发布时间】:2011-05-29 12:30:01
【问题描述】:
今天有点惊讶地发现,当插入语句出错时,我的自动递增主键仍然会递增,结果是我们的表中有“缺失”数字。
这样设计 SQL 有什么原因吗?有没有办法覆盖这种行为?
我正在通过 Linq-to-SQL 访问。
【问题讨论】:
-
为什么“丢失”数字如此重要?可能有一种方法可以覆盖,但听起来更像是您在处理身份功能之前需要解决的问题。
-
这很重要,因为我的老板抱怨它:)
-
告诉你的老板这是正常行为,试图用手动系统覆盖它会给数据带来风险。通常没有正当理由不期望有差距。
-
删除记录时也会出现空白。重新分配这些数字可能会损害数据完整性。
标签: linq-to-sql sql-server-2008 error-handling primary-key auto-increment