- 时间:2020-07-22 10:43 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:SQL Server误区30日谈 第25天 有关填充因子的误区
[b]
误区 #25:多个有关填充因子的误区[/b]
都是错误的
[b]
25a) 填充因子是一直存在的[/b]
不是的,通过[url=http://msdn.microsoft.com/en-us/library/ms177459.aspx]
Books Online[/url]可以看到(译者:我在新版的BOL没有找到这句话):
重要:
填充因子仅仅在索引创建或重建时生效,SQL Server存储引擎并不会一直保证页内的空闲值和填充因子保持一致。如果为了保证页内的空余值和指定的填充因子保持一直那么填充因子就会失去意义。因为这时页即使不满也需要进行分页。
[b]
25 b)填充因子0和100是不同的[/b]
错误,由BOL的一句话可以看到
填充因子0和100在各个方面都是一个意思。
[b]
25 c)填充因子设置为0会在非叶子节点保留 空间[/b]
这是错误的,这一点BOL上没有说,我也不知道这个误区从何而来,但这绝对是错误的。你可以通过如下代码证实这一点:
[url=http://www.sqlskills.com/BLOGS/PAUL/post/Inside-The-Storage-Engine-sp_AllocationMetadata-putting-undocumented-system-catalog-views-to-work.aspx]this blog post[/url]。