Los mejores
trucos de informática
y
trucos de programación
.
Inicio
Trucos de Windows
Informáticos
Nosotros
Registrar
Menú Privado
Trucos Windows
Trucos de Windows 7
Trucos de Windows Vista
Trucos de Windows XP
Windows 2003 Server
Trucos de Messenger
Trucos de Office
Trucos de Redes
Trucos Programación
Visual Basic.NET
Visual Basic 6
Trucos C#
Trucos ASP.NET
Trucos ASP.NET 2.0
SQL Server 2000
SQL Server 2005
Javascript
Trucos CSS
Otros Trucos
Trucos de SEO
Posicionar una web
Trucos de Google
Trucos Hardware
Varios
Nosotros
Webs recomendadas
Videos
Videos de humor
Trucos
Animales
Baja de Jazztel
<< Truco Anterior
Siguiente truco >>
Trucos de Sql Server
SET NOCOUNT ON
Y hablando de información innecesaria, he podido comprobar en mi propia piel las consecuencias de dejar con su valor por omisión una opción de configuración de SQL Server aparentemente inofensiva. Había programado un procedimiento almacenado con el objetivo de realizar una complicada puesta a punto de cierta base de datos por las noches. Este alevoso procedimiento nocturno disparaba centenares de instrucciones de selección y modificación sobre una base de datos bastante grande.
Desde un ordenador cliente se realizaba la petición de ejecución, consistente como he dicho, en una simple llamada a procedimientos. ¿Podría usted imagenar, sin embargo, que SQL Server envía un mensaje de confirmación al cliente cada vez que ejecuta cada una de las instrucciones SQL anidadas dentro del procedimiento? Increíble, pero cierto. En realidad, estas notificaciones de "ejecución parcial" pueden ser útiles, sobre todo si la ejecución se produce de forma asíncrona (no era mi caso). Pero son un desperdicio de ancho de banda para la red. Y como sabemos, el recurso más limitado en sistemas grandes es precisamente la capacidad de transmisión de datos de la red.
La forma de evitar estas notificaciones es, sin embargo, muy sencilla. Basta con ejecutar una sentencia de configuración antes de lanzarse a ejecutar con procedimientos con las características mencionadas:
set nocount on
execute isGenerateGroups
set nocount off
Puede parecer más sencillo ejecutar la primera instrucción al iniciar la conexión y mantenerla activa durante la duración de la misma. Pero, según la documentación que he podido consultar, al menos ODBC necesita estas notificaciones en algunos casos, y he optado por ser prudente. De todos modos, he logrado reducir el tiempo de ejecución del procedimiento ... ¡a tres cuartos del tiempo original!
Pon el truco en tus favoritos
Compartir en:
Dejar un comentario
Nombre:
Mail:
Web:
Comentario:
Contactar con mistrucos.net