为什么 SQL Server Id 自动增长 1000?

作者:vkvi 来源:千一网络(原创) 日期:2021-2-20

如果你留意本网站,你会发现:13154 这篇文章过后,并不是 13155,而是 14153。

增加了 999,比我们想象的 1,多增加了 998。由于这个数字很接近 1000,且有的人不是增加了 999,有的人真的就是增加了 1000,所以我们通常表述就都说多了 1000,在之前的记录中也出现过。

还有人说,如果是 bigint,则是增加 10000。

影响哪些版本?

已知 SQL Server 2012 受影响

听说 SQL Server 2014 受影响

更新版本?未详尽测试,至少我在 SQL Server 2019 中重启 SQL Server 未发生。

怎么发生的?

网上都说是重启了 SQL Server,我没有完整测试,但是我更怀疑是强制重启了(比如直接按电源关闭 Windows)

怎么解决?

网上说是在 SQL Server 启动参数中增加:-T272,如下图:

为什么 SQL Server Id 自动增长 1000?

是 BUG 吗?为什么?

未找到官方的回答,但是从国外的文章中,说这是一个 Feature,不是一个 Bug。

在某些数据库中,当数据库崩掉后,重启,它无法准确知道最后停留的 Id 是多少,所以干脆增加一个大数 1000,但是 SQL Server 是能够解决这个问题的,但是在他还是增加了,Why?

相关文章