sp_updatestats
是用来更新SQL Server数据库中统计信息的存储过程,它有助于优化查询性能。可以在生产环境中运行该存储过程,但在高负载时间或其他关键时间段最好避免执行。
sp_updatestats
是用来更新SQL Server数据库中统计信息的存储过程,它有助于优化查询性能。可以在生产环境中运行该存储过程,但在高负载时间或其他关键时间段最好避免执行。
sp_updatestats
会更新数据库中所有表的所有统计信息,只要有一行发生了更改。它使用默认采样,意味着它不会扫描表中的所有行,因此可能会产生比其他选项更不准确的统计信息。
如果您具有包括“重建索引”在内的维护计划,则它也会刷新统计信息,但它更准确,因为它扫描了所有行。在重建索引后没有必要重新构建统计信息。
使用update statistics
命令手动更新特定的统计对象或表可以使您对过程有更好的控制。如果要自动化它,请看看这里。
自动更新仅在优化器决定必须时才触发。2012 年发生了数学变化:<2012年,每500+表行数变化20%时,会触发自动更新;在2012年+中,它是 SQRT(1000×表行数)。这意味着在大表上更频繁。当然,临时表的行为不同。
总之,sp_updatestats
实际上可能会造成更多的损害,是最不推荐的选项。