[英]Why statistics have not been recomputed?
我有SQL Server Compact Edition 4.0数据库,每天都能获得约1000条记录。 但是随着时间的流逝,一些查询失去了效率。 我重新检查了索引和统计信息,发现统计信息并没有长时间更新。 sp_show_statistics
向我显示以下内容:
TABLE INDEX UPDATED ROWS ROWS__SAMPLED STEPS DENSITY AV_KEY_LEN RECOMPUTE STALE
Events PK_Events 18.08.2015 7:45:08 1876754 1876754 5 5,328349E-07 4 True False
Files PK_Files 09.08.2015 18:15:00 411589 411589 3 2,429608E-06 4 True False
Revisions PK_Revisions 07.07.2015 8:10:05 376296 376296 5 2,657482E-06 4 True False
Revisions UQ_Revisions_Guid 07.07.2015 8:10:50 376296 376296 200 2,657482E-06 16 True False
...
从MSDN(sp_show_statistics):
建议。 布尔值。 如果为True,则表示如果确定该统计信息已过时,则下次使用该统计信息时将自动对其进行更新。
创建所有索引时都没有STATISTICS_NORECOMPUTE选项。 每天都会大量使用数据库。 更详细一点:版本表现在具有442067条记录,但是该表的统计信息建立在376296行上,正如我在sp_show_statistics输出中看到的那样。
如何使统计信息保持最新状态? 谢谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.