一,聚集索引,表中各行物理顺序与索引键值的罗辑顺序相同,一个表只能有一个聚集索引,聚集索引通常可加快update与delete的速度;
二,非聚集索引,表中数据不按非聚集索引列的顺序存储,但非聚集索引的索引行中保存了非聚集索引键值与定位器,可以快捷的根据非聚集索引键的值来定位记录的存储位置;
在这里,我们需要用到填充因子(Fill Factor),填充因子是一个以百分比表示的数值,在重建索引的时候,填充因子的值决定了每个页面上要填充数据的空间百分比,以便保留一些剩余空间作为以后扩展索引的可用空间,以下代码演示了如何将填充因子设定为80,只有在高级选项打开的情况下才能设定填充因子:
- Use DatabseName;
- GO
- sp_configure 'show advanced options', 1;
- GO
- RECONFIGURE;
- GO
- sp_configure 'fill factor', 80;
- GO
如果填充因子的值是100,那么索引页就被会全部填充。我们一般考虑将填充因子设定为50到80中间的数值来保证添加新值的时候,不会发生页拆分。如果经常需要在索引末尾添加字段值的话,可以考虑将填充因子设定为90到100之间的值。最理想的状态是同时保证最少次数的的页拆分和索引重建。