SQL server identity column values start at 0 instead of 1

From DBCC CHECKIDENT

DBCC CHECKIDENT ( table_name, RESEED, new_reseed_value )

If no rows have been inserted to the
table since it was created, or all
rows have been removed by using the
TRUNCATE TABLE statement, the first
row inserted after you run DBCC
CHECKIDENT uses new_reseed_value as
the identity. Otherwise, the next row
inserted uses new_reseed_value + the
current increment value.

So, this is expected for an empty or truncated table.

Leave a Comment