2011-09-17 28 views
0

表中有10個條目,主鍵ID設置爲自動增量。如果我刪除所有條目並插入一個,它的ID將是11,是否可以將ID重新設置爲1?重置表中的ID而不丟棄它

+0

Microsoft SQLServer 2008 – Sergey

回答

4

嘗試truncate table命令象下面這樣:

TRUNCATE TABLE tablename 

如果您的表與其他表使用外鍵,那麼你可以使用啓用/禁用contraint refrenced它會重置自動遞增ID爲1

下面的命令:

啓用約束:

EXEC sp_msforeachtable @command1="print '?'", 
         @command2="ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all"; 

禁用約束:

EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"; 
+0

TRUNCATE將標識列的種子值重置爲爲列定義的種子值。默認種子爲1.請參閱http://msdn.microsoft.com/en-us/library/ms177570.aspx –

+0

這意味着您已經在您的(待截斷的)表與另一個表之間建立了依賴關係。 – ninetwozero

0
ALTER TABLE table AUTO_INCREMENT = 1; 

您可以爲 「1」