0
我有一个45M行(45 GB数据空间和2GB索引空间)的表。我添加了一个新列,并立即完成。改变列大小需要很长时间?
alter table T add C char(25)
然后我发现大小太小,所以我运行以下查询。
alter table T alter column C varchar(2500)
它运行了一个小时,仍在运行。 sp_whoisactive显示(目前仍在运行)
reads: 48,000,000
writes: 5,000,000
physical reads: 3,900,000
它不是很快吗?
你可能会在[DBA.SE]一个更好的答案(http://dba.stackexchange.com) – DaveShaw
答案是:不是,不。 –
将列添加到表的末尾几乎是瞬间的,如果更改现有列的大小,则需要重建表和可能的索引 – JVC