[請益] 關於SQL的增量種子

看板Soft_Job作者 (溫暖的風)時間11年前 (2014/12/17 16:11), 11年前編輯推噓2(2012)
留言14則, 9人參與, 最新討論串1/2 (看更多)
我想問一下 我MS SQL設置自動增量,起始1增量1 但是有時候會看到ID用到幾百後突然跳到一萬,諸如此類的ID值暴增 該Table資料在程式中是不會有刪除這個動作的 所以可以先排除程式出問題塞了一堆資料之後又刪掉的情況 想請問是否有人有同樣經驗 可否指點一下可能的原因和該如何避免這種情況發生 補充一下,雖然ID值暴增,但是資料量還是那樣 比如 ID VALUE 1 AAA 2 BBB 3 CCC 100 DDD 就算是有什麼程式錯誤塞的值也應該留著才對,所以才推測不是程式重複塞的問題 -- sent from my HR-93 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.11.211 ※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1418803906.A.FEE.html

12/17 16:19, , 1F
刪除或是新增失敗都會導致 id 增加
12/17 16:19, 1F
刪除一個不存在的值也會嗎? 關於新增失敗是指說新增語法錯誤那種失敗還是sql寫進去因其他原因失敗他會一直做?

12/17 16:25, , 2F
最有資格回答的大概是現暴雪昔微軟的某前輩的。^^
12/17 16:25, 2F

12/17 16:27, , 3F
資料庫有還原過嗎
12/17 16:27, 3F
曾有做過還原,但不是還原前100,還原後從10000開始跳那種情況 出現這種情況但是中間沒有做過還原 ※ 編輯: a47135 (220.130.11.211), 12/17/2014 17:03:44

12/17 17:00, , 4F
該資料可能是匯入的
12/17 17:00, 4F
※ 編輯: a47135 (220.130.11.211), 12/17/2014 17:06:03

12/17 17:35, , 5F
SET IDENTITY_INSERT ON ?
12/17 17:35, 5F

12/17 17:49, , 6F
能另外新增一行遞增數字1-...改成新主鍵嗎
12/17 17:49, 6F

12/17 18:07, , 7F
應該是insert失敗但非語法錯誤才會這樣,之前有碰到過
12/17 18:07, 7F

12/17 18:28, , 8F
如果有設成KEY應該沒辦法自己塞值吧!insert失敗比較可能
12/17 18:28, 8F

12/17 18:30, , 9F
加transaction 或 處理為什麼會insert失敗
12/17 18:30, 9F
ID是不能自己塞值的,只塞VALUE他就會照資料量ID=1、2、3...這樣給 ※ 編輯: a47135 (114.32.94.97), 12/17/2014 19:07:52

12/17 19:35, , 10F
不是要塞ID,你ID準備是4的時候塞其他欄位值發生錯誤時
12/17 19:35, 10F

12/17 19:36, , 11F
它的4就被用過了,但你那一筆資料沒成功塞入
12/17 19:36, 11F

12/17 19:36, , 12F
在錯誤時rollback回去應該就可以了
12/17 19:36, 12F
下次寫語法的時候會注意一下這部分 ※ 編輯: a47135 (114.32.94.97), 12/17/2014 19:50:53

12/17 22:01, , 13F
轉Database看看?
12/17 22:01, 13F

12/20 18:25, , 14F
insert 後沒commit?
12/20 18:25, 14F
文章代碼(AID): #1KaJh2_k (Soft_Job)
文章代碼(AID): #1KaJh2_k (Soft_Job)