2012-12-13 18 views

Odpowiedz

49

Jeśli użyć polecenia DBCC CHECKIDENT:

DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1); 

Ale Stosować ostrożnie! - to po prostu zresetuje IDENTITY na 1 - więc twoje następne wstawki otrzymają wartości 1, potem 2, a następnie 3 ->, a będziesz miał zderzenie z wcześniej istniejącą wartością 3 tutaj!

IDENTITY Po prostu podaje numery w kolejnej kolejności - nie ma NOT w żaden sposób upewnij się, że nie ma konfliktów! Jeśli masz już wartości - wykonaj , a nie ponownie przywrócić do niższej wartości!

+0

zapomniałem powiedzieć, używam Management Studio, więc chcę reseedować to z Management Studio – victorio

+3

@victorio: wystarczy otworzyć nowe okno zapytania i wykonać to polecenie T-SQL! –

+0

niiiice, dziękuję bardzo! – victorio

15

Używam SQL Server 2012, a DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1) powoduje, że wartość 2 jest następna.

Więc dla SQL Server 2012, aby zmienić 10 aby uzyskać wartość 1 do następnego rekordu wkładki:

DBCC CHECKIDENT ("YourTableNameHere", RESEED, 0); -- value will be 1 for the next record insert 
+0

Działa to w ** SQL Server 2008 R2 ** –