SQL服务器 - 估计执行时间并获取alter table命令的进度

时间:2013-05-02 12:54:32

标签: sql-server performance sql-server-2012

我有一个非常大的表,我不时需要更改其架构,添加新列或更改现有列的类型。

这需要花费很多时间(小时),我想知道是否有任何方法事先知道需要花多少时间(大约),或者,当alter运行时,我想知道它的当前进展(即完成30%)。

这可能吗?

1 个答案:

答案 0 :(得分:0)

否-不存在此类功能。

我将在这里回应评论者@Kermit和@Damien_The_Unbeliever建议的解决方法,即您应该创建具有所需模式的新表,然后(使用游标)将行批量移至其中。这种方法使您可以PRINT反馈进度,并且比启动事务日志的大小更友好。