是否有任何方式永久更改標識列的標識種子?使用DBCC CHECKIDENT似乎設置了last_value。如果表格被截斷,所有值都將被重置。更改SQL Server中的標識種子(永久!)
dbcc checkident ('__Test_SeedIdent', reseed, 1000)
select name, seed_value, increment_value, last_value
from sys.identity_columns
where [object_id] = OBJECT_ID('__Test_SeedIdent');
回報
name seed_value increment_value last_value
-------------------------------------------------
idIdent 1 1 1000
我希望像
alter table dbo.__Test_SeedIdent alter column idIdent [int] identity(1000,1) NOT NULL
一些語法會存在。
是否有必要創建一個新的列,移動這些值,刪除原始列並重命名新的?
正在運行Profiler,我看到MS創建了一個臨時表,將數據複製過來,然後刪除現有表並重命名臨時表。可能是因爲不能有多個標識列。 – avenmore 2010-01-26 14:29:32