Estoy usando SQL SERVER 2012
tengo mi Auto Update Stats
ON en mi base de datos.
Desde el siguiente enlace aprendí que, las estadísticas de Actualización automática se activarán por cada SQRT(1000 * Table rows)
cambio en las filas de la tabla.
https://blogs.msdn.microsoft.com/srgolla/2012/09/04/sql-server-statistics-explained/
Creé una tabla con 1000 registros
SELECT TOP 500 Row_number()OVER (ORDER BY (SELECT NULL)) rn,
name
INTO stst
FROM sys.objects
Creando estadísticas
CREATE STATISTICS rn
ON stst (rn)
CREATE STATISTICS name
ON stst (name)
Comprobación de las estadísticas creadas
DBCC show_statistics('stst', rn) -- Rows 500
DBCC show_statistics('stst', name) -- Rows 500
Según la fórmula
select SQRT(1000 * 500) -- 707.106781186548
Entonces, si agrego / modifico 707.106781186548
registros en mi tabla, las estadísticas de actualización automática deberían dispararse
Agregar 1000
más registros a mi tabla que deberían ser más que suficientes para dispararauto update stats
INSERT INTO stst(rn,name)
SELECT TOP 1000 Row_number()OVER (ORDER BY (SELECT NULL)) rn,
a.name
FROM sys.objects a
Para disparar el auto update stats
Select * from stst
Comprobando las estadísticas
DBCC show_statistics('stst', rn) -- Rows 500
DBCC show_statistics('stst', name) -- Rows 500
Lamentablemente todavía Rows
es el 500
único.
Incluso después de insertar 1000
registros en mi tabla, que obviamente es mayor que 707.106781186548
mientras realizaba, SELECT
¿por qué las estadísticas de Actualización automática no se activaron? Que me estoy perdiendo aqui