У вас есть много таблиц, у которых нет начального числа и приращения 1?
Если нет (по умолчанию все таблицы имеют это), используйте этот код:
exec sp_MSforeachtable @command1 = 'DBCC CHECKIDENT(''?'', RESEED, 1)'
MSforeachtable
- это недокументированный, но чрезвычайно удобный хранимый процесс, который выполняет данную команду для всех таблиц в вашей базе данных.
Если вам нужно быть абсолютно точным, используйте этот оператор - он сгенерирует список операторов SQL для повторного заполнения всех таблиц исходным значением SEED:
SELECT
IDENT_SEED(TABLE_NAME) AS Seed,
IDENT_INCR(TABLE_NAME) AS Increment,
IDENT_CURRENT(TABLE_NAME) AS Current_Identity,
TABLE_NAME,
'DBCC CHECKIDENT(' + TABLE_NAME + ', RESEED, ' + CAST(IDENT_SEED(TABLE_NAME) AS VARCHAR(10)) + ')'
FROM
INFORMATION_SCHEMA.TABLES
WHERE
OBJECTPROPERTY(OBJECT_ID(TABLE_NAME), 'TableHasIdentity') = 1
AND TABLE_TYPE = 'BASE TABLE'
Возьмите этот последний столбец в выводе и выполните эти операторы, и все готово! : -)
(по мотивам сообщения в блоге Пинала Дэйва)