从Sql Server中的非常大的表中删除一列

时间:2013-09-27 12:41:23

标签: sql sql-server-2008

我使用以下查询删除表中的列[具有超过2个laks记录]

Alter table Table Name Drop column column name

但需要更多时间。我无法预测时间。耗时2小时就太费时了。

您能否建议如何以有效的方式删除大表中的列?

1 个答案:

答案 0 :(得分:3)

DROP COLUMN几乎总是几乎是瞬时的,因为它不是数据大小的操作。

DDL未完成,因为您已阻止。与ALTER TABLE一样,DDL需要SCH-M访问该表,并且必须等到所有挂起操作释放任何冲突锁(并且任何其他锁与SCH-M冲突)在表上。使用Activity Monitor确定阻止您的内容。根据您的发现采取适当的行动。

相关问题