sqlserver修改自增
很多時候我們需要重置某個表的自增列,讓自增列重新從1開始記數。最蠢的方法當然是把該表刪掉再重新建表了。其實,還有其它的方法可以重置自增列的值:
方法一:使用TRUNCATE
TABLE語句:
TRUNCATE
TABLE刪除表中的所有行,而不記錄單個行刪除操作,同時重置自增列。TRUNCATE
TABLE
在功能上與沒有WHERE子句的DELETE語句相同;但是,TRUNCATE
TABLE
速度更快,使用的系統資源和事務日誌資源更少。
方法二:使用DBCC
CHECKIDENT語句:
DBCC
CHECKIDENT在
SQL
Server
2008
R2
中檢查指定表的當前標識值,如有必要,則更改標識值。還可以使用
DBCC
CHECKIDENT
為標識列手動設置新的當前標識值。
語法:
DBCC
CHECKIDENT
(
table_name
[,
{
NORESEED
|
{
RESEED
[,new_reseed_value
]
}
}
]
)
[
WITH
NO_INFOMSGS
]
參數:
table_name:是要對其當前標識值進行檢查的表名。指定的表必須包含標識列。表名必須符合標識符規則。
NORESEED:指定不應更改當前標識值。
RESEED:指定應該更改當前標識值。
new_reseed_value:用作標識列的當前值的新值。
WITH
NO_INFOMSGS:取消顯示所有信息性消息。
示例:我們要重置表t1的當前標識值為1,sql如下:
dbcc
checkident('t1',reseed,1)
B. sqlserver 怎麼設置主鍵自增長
比方說,你要創建一個表user_info,設置的主鍵名稱是user_id,那麼可以如下設置:
create
table
user_info
(user_id
int
primary
key
identity(1,1),//主鍵初值為1,每次自增1,數值可變化,但要符合之前定義的類型
user_name
varchar(20)
not
null,
....
)
希望能幫到你!~
C. sqlserver將某欄位更新成自增型的sql語句
自增列不能修改,只能刪除或者添加
所以對應的就只能先刪除該列,然後再添加列,添加時賦值屬性為標識列
創建新列後會自動填充數字