我在SQL Server 2005中有一个大表,占用大约3.5 GB的空间(根据sp_spaceused)。它有1000万条记录和几个索引。SQL Server 2005:删除列占用的磁盘空间
我刚把一帮来自于它的列,使得记录长度得到了降低到一半,让我吃惊花了零时间来做到这一点。显然,sp_spaceused仍报告相同的空间,SQL Server在删除列时没有做任何事情,除了将它们标记为“已删除”。
所以我搬到从这个表中的所有数据到另一个新表,截断它,感动了所有的数据备份,因此它会得到所有的重建。
现在,在这之后,数据正在2.8 GB,这是比以前少了,但我期待一个更大的下降。
有没有可能是事实,这台原本这些列仍留下的东西吗?
截断它不够?我是否应该放弃它并使用较小的色谱柱再次创建它?
或者数据真的是2.8 GB?
谢谢!
而只是假设它是一个3.5GB的表,该操作将罚款与系统运行? – marquito 2013-04-02 17:30:08