[研究] SQL Server 2016 識別值 (identity value) 設定研究
2017-03-16
由於一些測試,Auto-increment 欄位值一值增加,想要重設,或資料刪除後,從現存資料編號的下一筆開始編號,找到下面這篇。
DBCC CHECKIDENT (Transact-SQL)
https://msdn.microsoft.com/zh-tw/library/ms176057.aspx
https://msdn.microsoft.com/en-us/library/ms176057.aspx
實際測試發現,有時候重設為 N,結果新增一筆後,有時候是 N,有時候是 N+1,所以進行一些測試。
(下圖)
truncate Table TestTable;
DBCC CHECKIDENT ("TestTable", RESEED, 10);
insert into TestTable (myname) values ('John');
select * from TestTable;
DBCC CHECKIDENT ("TestTable", RESEED, 20);
insert into TestTable (myname) values ('Tom');
select * from TestTable;
結果:
(1) 如果 是剛trancate 清空過資料表,目前0筆資料,DBCC CHECKIDENT ("TestTable", RESEED, 10),新增一筆後,編號是10。
(2) 如果是已經有資料,DBCC CHECKIDENT ("TestTable", RESEED, 10),新增一筆後,編號是11。
(完)
沒有留言:
張貼留言