Tenemos un programa que tiene una declaración SQL mal escrita que causa que se devuelva cada fila de una tabla. Hay varios millones de filas en la tabla, por lo que esto está causando problemas graves de memoria y bloqueos en la máquina de nuestros clientes. El proveedor está en el proceso de crear un parche para el problema, sin embargo, todavía quedan algunas semanas. Mientras tanto, intentábamos encontrar un método para limitar el número de resultados devueltos en el lado del servidor solo como solución temporal.Limite el número de filas devueltas en el lado del servidor (límite forzado)
No tengo ninguna esperanza real de que haya una solución, he mirado alrededor y realmente no veo ninguna forma de hacerlo, sin embargo, espero que alguien pueda tener una idea.
Gracias de antemano.
EDITAR
me olvidó una pieza importante de información, no tenemos acceso al código fuente por lo que no puede cambiar esto en el lado del cliente, donde se forma la instrucción SQL. No existe un componente real del lado del servidor, el cliente simplemente accede directamente a la base de datos. Cualquier solución requeriría básicamente un procedimiento, desencadenador o algún tipo de configuración/comando SQL-Server 2008.
¿No solucionará esa aplicación temporal la aplicación? ¿Sabes cómo se utilizan estos datos? – Paddy
Cambie el nombre de la tabla y reemplácela con una vista que tenga un 'SELECT TOP x * FROM new_name_of_the_table'. Sin embargo, tenga en cuenta que las manipulaciones de datos (INSERT, UPDATE, DELETE) realizadas por la aplicación fallarán posteriormente. – Heinzi
@Heinzi Desafortunadamente tendríamos que poder insertar, actualizar y eliminar. – tplaner