seed auf MS SQL Tabellen ermitteln bzw. setzen
Um den SEED auf einer MS SQL Server Tabelle zu setzen, sind folgende Befehle notwendig:
dbcc checkident (<tblname>, reseed, <newMaxSeed>)
Ein Beispiel:
-- create table tblMy (nKey identity(1, 1), ...)
declare @maxKey int
select @maxKey = max(nKey) from tblMy
dbcc checkident (tblMy, reseed, @maxKey)
Hier noch ein Befehl, mit dem man alle aktuellen Seeds der vorhanden Tabellen sieht, die auch eine Identity-Spalte besitzten:
select Seed = ident_seed(TABLE_NAME)
, Increment = ident_incr(TABLE_NAME)
, CurrentIdentity = ident_current(TABLE_NAME)
, Table = TABLE_NAME
from INFORMATION_SCHEMA.TABLES
where objectproperty(object_id(TABLE_NAME), 'TableHasIdentity') = 1
and TABLE_TYPE = N'BASE TABLE'