重置sqlserver自增長列的種子

2022-01-19 05:19:33 字數 1151 閱讀 4313

**:

如果表中的資料不要了,用下面的語句:  truncate table表

如果表中的語句還要,用下面的語句:  dbcc checkident (表名, reseed, 1)

dbcc checkident ('table_name', noreseed) 不重置當前標識值。

dbcc checkident 返回乙個報表,它指明當前標識值和應有的標識值。

dbcc checkident ('table_name')或dbcc checkident ('table_name', reseed)  如果表的當前標識值小於列中儲存的最大標識值,則使用標識列中的最大值對其進行重置。

dbcc checkident ('table_name', reseed, new_reseed_value)  當前值設定為 new_reseed_value。 如果自建立表後沒有將行插入該錶,則在執行  dbcc checkident 後插入的第一行將使用 new_reseed_value 作為標識。 否則,下乙個插入的行將使用 new_reseed_value + 1。 如果 new_reseed_value 的值小於標識列中的最大值, 以後引用該錶時將產生 2627 號錯誤資訊。

如果表中的語句還要,用下面的語句:

dbcc checkident (表名, reseed, 1)

dbcc checkident ('table_name', noreseed) 不重置當前標識值。

dbcc checkident 返回乙個報表,它指明當前標識值和應有的標識值。

dbcc checkident ('table_name')或dbcc checkident ('table_name', reseed)  如果表的當前標識值小於列中儲存的最大標識值,則使用標識列中的最大值對其進行重置。  dbcc checkident ('table_name', reseed, new_reseed_value)  當前值設定為 new_reseed_value,一般new_reseed_value是當前最大的id值。 如果自建立表後沒有將行插入該錶,則在執行  dbcc checkident 後插入的第一行將使用 new_reseed_value 作為標識。 否則,下乙個插入的行將使用 new_reseed_value + 1。 如果 new_reseed_value 的值小於標識列中的最大值, 以後引用該錶時將產生 主鍵衝突的錯誤

SQL Server設定主鍵自增長列

1.新建一資料表,裡面有欄位id,將id設為為主鍵 create table tb id int constraint pkid primary key id create table tb id int primary key 2.新建一資料表,裡面有欄位id,將id設為主鍵且自動編號 creat...

ORACLE自增長列

新建序列 create sequence create sequence q tpa acitive alarms id minvalue 1 maxvalue 99999999999999999 start with 100 increment by 1 cache 100 觸發器 create ...

SqlServer關閉與啟用標識 自增長 列

1.通過新增列來替換標識列 替換法 1 新增新列 2 alter table tablename add id int 3 賦值 4 update tablename set id identity id 5 刪除標識列 6 alter table tablename drop column ide...