SQL Server所能读取的最小单位是页,每个页8KB,8个物理上连续的页就是一个区,这样数据库中每MB就包含有16个区

堆是没有聚集索引的表。如果表格上没有聚集索引,数据行将不按任何特殊顺序存储,数据页也没有任何特殊顺序。

聚集索引保证了表格的数据按照索引行的顺序排列,而且SQL Server知道这种顺序关系。

 

DBCC Shrinkdatabase 收缩指定数据库中所有数据文件和日志文件的大小

DBCC Shrinkfile 收缩当前数据库指定数据文件或日志文件的大小

DBCC Shrinkfile 所做的都是区一级的动作。它会把使用过的区前移,把没有在使用中的区从文件中删除。但是,它不会把一个区里面的空页移除、合并区,也不会把页面里的空间移除、合并页面。所以,一个数据库中有很多只使用了一两个页面的区,DBCC Shrinkfile效果会很不明显。