Por extraño que parezca, necesito ralentizar una consulta SQL. Actualmente estoy usando Microsoft SQL Server 2008 R2 en un servidor de desarrollo interno con la base de datos AdventureWorks. Estoy en el proceso de probar algunos códigos y las consultas que estoy ejecutando son demasiado rápidas sin importar lo que intente.Cómo ralentizar una consulta SQL?
Básicamente estoy probando una característica de corte y necesito una consulta lo suficientemente larga para poder cortarla antes de que se complete.
Desafortunadamente, como es una instalación local, no hay una sola consulta o una tabla lo suficientemente grande en la base de datos de AdventureWorks para realmente darme buenos datos para trabajar. He intentado
WAITFOR DELAY '01:00'
Qué funcionó muy bien para probar simplemente para asegurarse de que estaba trabajando, pero ahora tengo que probar para ver si puedo cortar transmitir los datos a mitad de leer. La declaración de WAITFOR no me hace justicia en ese sentido porque necesito que esté recuperando datos del servidor de forma activa. Mi primera intuición fue utilizar cálculos enrevesados para ralentizarla; sin embargo, incluso si SQL Server multiplicó por sí solo todos los valores numéricos en la consulta, 37 veces solo ralentizó la consulta en milisegundos. Lo segundo que probé fue incrustar la declaración WAITFOR
en una sub consulta, pero parece que no puedes hacer eso. Finalmente, lo único que no he intentado es ejecutar varios procedimientos almacenados y WAITFOR
entre ellos, pero no creo que funcione para lo que necesito.
Tengo que decir que estoy impresionado por lo difícil que es hacer una consulta absolutamente terrible cuando estás tan cerca del servidor.
¿Hay alguna manera de ralentizar una consulta fácilmente?
¡Gracias!
Simplemente haga una consulta * muy mala * fuera del índice o fuerce una consulta normalmente buena para usar LOOP JOINs cuando debería estar usando HASH/MERGE ;-) –
Unas autocomisiones cruzadas ralentizarán las cosas muy bien ... Y un gran conjunto de resultados causaría que IO fuera el cuello de botella. – Oded