2010-03-05 68 views
0

我有一個表的標識列已爲其所有記錄增加1,然後突然上週它開始以奇怪的方式遞增。
例如:SQL Server 2005標識本身遞增

身份 - 日期

31891 2010-02-27 09:47:41  
39258 2010-02-27 13:13:03  
41994 2010-02-27 13:43:56 
45119 2010-02-27 14:44:43  
45120 2010-02-27 14:51:33 
45121 2010-02-27 15:01:12  
63943 2010-02-27 19:38:24  
63944 2010-02-27 20:14:11 
73344 2010-02-27 22:06:35 
78298 2010-02-27 22:54:43  
124007 2010-02-28 07:02:51  
130482 2010-02-28 07:35:34  
130483 2010-02-28 08:05:02  
144470 2010-02-28 10:11:57  
164253 2010-02-28 11:30:00 
254921 2010-02-28 16:59:51  
254922 2010-02-28 17:06:28 

如果你看的時候,你可以看到更長的時間是刀片之間的李建華,伍妍的增量。我完全失去了爲什麼會發生這種情況。我不對錶執行任何刪除查詢,因此它不能被刪除行。

+0

我想說的是行被刪除了,這是奇怪的行爲,你有沒有考慮用Profiler來看桌子,看看蓋子下面發生了什麼? – kd7

+0

你能告訴我們你的表定義,用於創建表的DDL嗎? –

+0

您是否嘗試過重新認證身份? –

回答

6

任何時候嘗試插入都會增加標識序列 - 這包括失敗的或回滾的INSERT。你有任何進程產生插入錯誤或回滾?

+0

我現在看到,如果磁盤空間,分區sql服務器是打開(和Windows),數據庫文件是在另一個分區有很多的磁盤空間,但它可以影響插入? – Gusten

+0

+1非常好!我甚至沒有想過這個!非常好! –

4

每次失敗的插入都會導致身份值遞增。是否有可能試圖插入新行並失敗?

+0

+1非常好!我甚至沒有想過這個!非常好! –