Sql-Server
主鍵上的自動增量是否會阻止並發插入?
我有一個 Sql Server 日誌表,它不斷被插入,我想修改這個表的設計。
目前,我們使用 GUID 作為 PK,因為軟體可以生成它,我們只需插入它,希望多個插入不會相互阻塞。但是,UniqueId 對錶來說並不是一個非常有效的 PK,而且我們的索引非常大且碎片化。
如果我將此列更改為
long
啟用auto-increment
。這會成為並發插入瓶頸嗎?我不需要我的主鍵按任何順序排列,只是該行的唯一 ID?
如果我將此列更改為 long 並啟用自動增量。這會成為並發插入瓶頸嗎?
答案是否定的,因為 SQL Server 獲取下一個標識值的步驟在事務之外。這就是為什麼當你執行
ROLLBACK
身份並沒有減少,你可以有差距。