如何從現有表中刪除列?刪除MS SQL Server中的列
36
A
回答
82
你要找的命令是:
alter table tblName drop column columnName
其中tblName
是表的名稱和columnName
是列名,但有可能需要幾件事情先做。
- 如果對該列有任何外鍵引用,則需要先刪除它們。
- 如果存在使用該列的索引,則需要刪除該列或將其調整爲不使用該列。
請記住,這個命令的性能不一定是好的。一種選擇是等待的時候,你可以肯定沒有人會來訪問數據庫中的停機時間段,重新命名當前的表,然後使用create table
和insert into ... select from
轉移你不想刪除列。
一個甲骨文的更高版本的實際上有一個軟刪除這正好可以標誌着列作爲未使用的無需物理刪除。它具有相同的效果,因爲你不能再引用它,並且沿着alter table ... drop unused columns
這條線有一條命令,它意味着要在安靜的時間運行,這實際上是在實際上將其刪除。
這樣做的優點是不需在繁忙的時候拖累數據庫性能立即「消失」的列。
11
ALTER TABLE XXX DROP COLUMN YYY;
3
對於大表這可能是非常慢。創建一個新的表格,舊的表格的複製品,但更改並插入數據通常會快很多。刪除舊錶,然後重命名新表。
2
相關問題
- 1. 刪除SQL Server中的外鍵和列
- 2. 在MS Sql Server 2000中刪除數據庫連接
- 3. 重命名MS SQL Server 2005中的列
- 4. MS SQL Server行GUID列
- 5. SQL Server刪除表
- 6. 刪除在SQL Server
- 7. 刪除SQL Server 2005
- 8. 刪除從SQL Server
- 9. SQL Server Dynamic Pivot:刪除完全NULL列
- 10. 按列值刪除行SQL Server
- 11. 刪除Reccords - SQL Server 2008的
- 12. 指導MS SQL刪除查詢
- 13. MS SQL Server 2012
- 14. 在SQL Server中刪除時消除序列號「空位」
- 15. 刪除SQL Server中的重複記錄?
- 16. 刪除SQL Server中的隱式轉換
- 17. 刪除表中的幾項SQL Server
- 18. SQL Server中的XML PATH刪除XML
- 19. 繼承MS SQL的SQL Server
- 20. 刪除SQL Server中nvarchar列中的前導零號
- 21. 如何在sql server中刪除整列中的一個單詞?
- 22. SQL Server 2005:刪除優化
- 23. 手動刪除sql server 2008
- 24. 刪除SQL Server視圖
- 25. SQL Server 2005高效刪除
- 26. SQL Server 2008刪除級聯
- 27. SQL Server:嘗試刪除
- 28. SQL Server刪除點後
- 29. 刪除SQL Server數據庫
- 30. SQL Server刪除困境
的可能重複(HTTP [如何刪除從現有的表的列?]://計算器。com/questions/5626344/how-to-remove-a-column-from-an-existing-table) – 2014-02-07 16:20:45