0

我试图找出这个问题的答案,但我还没有找到明确和/或准确的答案。

在 MS SQL(本例中为 2008 年)中,是否有以下命令:删除、截断或删除(表),“自动”释放用于数据占用的磁盘空间量?

我有我的想法,但基于一堆评论......没有什么真正直截了当的。

我读过一些关于收缩(商品和坏品)的评论,所以我的意图是避免使用这个命令,这就是我问的原因。

预先感谢,请原谅我使用英语......(我给出的主要用途是编程和 SQL!)

4

1 回答 1

4

这些命令都没有释放磁盘空间。文件组中的文件在所有三种情况下都保持不变。对 HoBT(堆或 B 树)的分配在截断或丢弃时被清除。删除只是擦除表页面中的行,但页面仍然分配给 HoBT。除非您缩小数据文件,否则数据文件将保持相同大小,这通常不是一个好主意。

于 2013-04-09T13:32:26.487 回答