解決SQL SERVER 2012自增ID突然斷開的問題(ID突然增加1000的)


最近這兩年創建數據庫的自增Id列總是出現一個問題,一開始自增正常,都是1、2、3遞增,突然就變成1004、1005這樣,一直以為程序有問題,后來多次查閱資料才在國外網站上找到問題。

從SQL Server 2012版本開始,重新啟動SQL Server實例時,表的Identity 值將被跳轉,而實際跳轉的值取決於標識列數據類型。如果為整數(int)數據類型,則跳轉值為1000 ;如果為大整數(bigint),則跳轉值為10000。從我們的應用程序角度來看,這種增量對於所有業務案例都是不可接受的,特別是當該值顯示給客戶時。這是僅SQL Server 2012附帶的特殊情況/問題,較早的版本沒有此問題。

 

意思就是說,只要重啟SQL Server實例,自增ID就會斷開1000條或10000條。雖然id不連續一般沒什么影響,但強迫症往往受不了突然從一兩位數變成四五位數,解決方案也很簡單:

將-t272注冊到SQL Server啟動參數

從服務器中打開SQLServer配置管理器。在sqlserver服務商右鍵選擇“屬性”菜單。您將找到一個選項卡式對話框窗口。從那里選擇啟動參數選項卡,啟動參數輸入-t272,點擊添加然后再次重新啟動SQL Server 2012實例。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM