Sql-Server
保證兩個連續值相差恆定增量的 SQL Server 標識列?
我在這裡提出了關於 Denali 序列的問題,並在此處提出了關於在 Oracle 全域表中模擬身份列的問題。
我一直認為我可以相信身份值會不斷增加。另一方面,我知道使用序列我永遠無法確定它們中沒有間隙。
是時候適應序列中的間隙還是在臨時表中保留標識列會更好?
您不能保證 SQL Server 中的連續或連續標識值
- 插入多行並不能保證這一點。請參閱是否插入的記錄總是接收連續的標識值。
- 目前標識值在回滾時保持遞增(顯式 ROLLBACK 或由於 CONSTRAINT 錯誤而隱式)。
還:
- 載入臨時表並不能保證連續的值。話雖如此,這更難證明,並且在實踐中有效(因為許多人都依賴它),但要注意……
您必須適應編號中的空白,無論生成如何。