2013-02-27 100 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可能需要一段时间的问题,这不是一个微不足道的变化。根据平台的不同,如果有很多行并且您要删除的列包含非空数据,它也可能会加剧。

也许选择你想保留到一个新表的列是更可行的,删除这一个,并将新表重命名为原始表名。

答故意写成一般

相关问题