我已創建一個表,其中employee id
作爲標識列。現在,我想刪除身份並將數據類型替換爲bigint。我正在使用Sql Compact版本。如何實現這一目標?如何從表中刪除標識列
1
A
回答
0
在「真正的」SQL Server中,您必須執行這些步驟 - 不確定SQL Server CE是否允許相同,但請試一試!我假設你也可能在那一欄上有你的PRIMARY KEY約束 - 對吧?如果不是,你不需要做第一步和最後一步。而且我假設你想再次在列上標識IDENTITY,對吧?
-- DROP the primary key constraint (if you have that on your column)
ALTER TABLE dbo.Employees
DROP CONSTRAINT PK__Employees__3214EC274222D4EF
-- ALTER the datatype into BIGINT
ALTER TABLE dbo.Employees
ALTER COLUMN Employee_ID BIGINT
-- set PK constraint again
ALTER TABLE dbo.Employees
ADD CONSTRAINT PK_Employees PRIMARY KEY(Employee_ID)
0
3
我不相信你可以使用T-SQL,從欄中刪除IDENTITY屬性。 相反:
- 添加新BIGINT列表
- 複製從當前標識字段中的數據到新的領域
- 除去現有列
- 新列重命名爲正確的名稱
您可以在表格的設計視圖中的SSMS中執行此操作。我相信在幕後它會像上面那樣做。
更新: 要確認,在SSMS 2K8當您嘗試從列刪除IDENTITY屬性,然後將其保存,它實際上正是由SQL事件探查器監視重新創建表(你可以看到它做什麼)。爲了在SSMS中執行此操作,需要確保在「工具」 - >「選項」 - >「設計器」 - >「表和數據庫設計器」中將「禁止保存需要重新創建表的更改」選項設置爲OFF。我認爲它默認爲ON,否則當您嘗試執行時會導致錯誤消息。
相關問題
- 1. 如何從Asp.Net標識表中刪除descriminator列
- 2. 從表中的列中移除標識
- 3. 如何刪除插入表中標識列的重複值?
- 4. 不能從具有標識列的表中刪除記錄
- 5. 刪除JTable列標識符
- 6. 從ASP.NET標識刪除`AspNetUserLogins`表
- 7. 如何從ASP.NET列表視圖中刪除列標題
- 8. 如何從表中刪除標記
- 9. 從列表中刪除「類別」標題
- 10. 從Python列表中刪除BeautifulSoup標記
- 11. 從列表中刪除標點符號
- 12. 從標準列表中刪除元素
- 13. 從列表中刪除標題查看
- 14. 從python列表中刪除座標
- 15. 如何從列表中刪除元素
- 16. 如何從列表中刪除對象
- 17. 如何從列表中刪除?
- 18. 如何從列表中刪除重複
- 19. 如何從列表中刪除項目
- 20. 如何從列表中刪除項目?
- 21. jquery如何從表中刪除一列
- 22. 我如何從表中刪除列
- 23. 如何從HashSet列表中刪除「\ t」?
- 24. 如何從列表中刪除項目
- 25. 如何從列表中刪除字符
- 26. 如何從列表中刪除[NaN]?
- 27. 如何從iTextSharp表中刪除列
- 28. 如何從鏈接列表中刪除?
- 29. 如何從表中刪除多列?
- 30. 如何從列表中刪除項目?
Wil試圖讓更高.. Im新到這個論壇 – Shiny 2010-05-25 07:20:16
重複:[SQL Server如何從列中刪除身份](http://stackoverflow.com/questions/702745/sql-server-how-to- drop-identity-from-a-column) – 2010-05-25 11:51:06
使用此方法定義於 http://stackoverflow.com/questions/702745/sql-server-how-to-drop-identity-from-a-column – Vandana 2012-07-09 10:59:29