2009-03-03 57 views
3

我目前正在對數據模型進行一些更改,其中包括更改列(恰好是主鍵的一部分),以便它不再是標識。有沒有辦法做到這一點,實際上是刪除和重新創建整個列或表? SSMS自動生成的代碼就是這樣做的,但我想知道是否有更簡單的解決方案。如何完全刪除標識

回答

4

您不能刪除列的標識屬性而不刪除它。

可能的解決方法的步驟是:

的(a)添加新的列

(b)中更新與標識列值

(c)中刪除標識列的列。

Alter Table Tablename Add newColumnname int 

Update Table set newColumnname =IdentityColumn 

Alter Table TableName Drop IdentityColumnName 

注意:如果你在談論關閉身份屬性暫時,檢查設置IDENTITY_INSERT表名ON命令

有意義嗎?

乾杯,約翰

+0

這似乎相當於我通過谷歌發現的。由於這不是一個臨時更改IDENTITY_INSERT不幫助我。 – Mykroft 2009-03-03 21:47:51