2013-02-27 436 views
0

我有一張200列的表,我必須從這張表中刪除96列。alter table xyz drop column

使用聲明

alter table XYZ drop column a,b,c,d................... 

正在採取永遠在SQL Server2000的

誰能幫助或者給我一些想法如何能這樣做effitiently ..

感謝

除去列
+0

爲什麼不手動刪除它們在SSMS或查詢分析器設計視圖? – Kaf 2013-02-27 23:58:02

+0

我的第一個想法是確保您沒有任何外鍵與這些列綁定或因結果而發生任何級聯更改。我對MSSQL 2000不夠熟悉,但是我希望它不會讓你丟掉一個已經是(或部分)主鍵的列,因爲這樣做可能會引入重複的鍵。 – Devin 2013-02-27 23:58:24

+0

沒有與這些列關聯的主鍵。 – palum 2013-02-28 00:02:03

回答

2

對於任何RDBMS和IS可能需要一段時間的問題,這不是一個微不足道的變化。根據平臺的不同,如果有很多行並且您要刪除的列包含非空數據,它也可能會加劇。

也許選擇你想保留到一個新表的列是更可行的,刪除這一個,並將新表重命名爲原始表名。

答故意寫成一般

相關問題