Qualche tempo fa, è stato chiesto in lista come fare una volta cancellato il contenuto di una tabella di SQL Server con un campo contatore o dopo aver cancellato una serie di record, resettare il contatore per farlo ripartire da 1 oppure dall' ID massimo rimasto.
E' una cosa davvero "Difficilissima" :oP
DBCC CHECKIDENT ('NomeTabella', RESEED,1 )
oppure, se la tabella non è vuota
DECLARE @MaxVal int
SET @MaxVal = ( SELECT Max( NomeCampo ) FROM NomeTabella )
DBCC CHECKIDENT ('NomeTabella', RESEED,@MaxVal )
Chi lancia questo comando deve avere il diritto di modificare le tabelle del database ovviamente, altrimenti il comando non funziona.
Tags: SQL, Query, CheckIdent, SqlServer