IDENTITY不生成种子并正确递增

Tro*_*BOT 2 sql sql-server

我将列ID设置为IDENTITY with seed且increment = 1,1.但是,它不会从1开始计数.而是从2开始.当我插入下一行时,它设置ID = 7而不是2.为什么会发生这种情况,如何解决?

我编写了表格并检查了管理工作室.它实际上是一个IDENTITY(1,1).

Aar*_*and 7

IDENTITY不保证一组连续的值没有间隙.如果这是您所需要的,您应该考虑其他事项(例如,滚动您自己的可序列化MAX+1解决方案).各种事物都可能造成差距:

  • INSERT失败
  • 回滚的事务
  • 这个bug
  • 随后的DELETE(也可能破坏你自己的解决方案)
  • 等等

  • @ Trojan.ZBOT因为如果单独使用,它可以保证在并发情况下该列的唯一性 (4认同)