
Ejecutar un proceso cada segundo exacto en sql server
SQL
Publicado el 17 de Diciembre del 2012 por Xebas Garcia
21.222 visualizaciones desde el 17 de Diciembre del 2012
Query que muestra como ejecutar un proceso/instrucción cada segundo.
Básicamente, hay un contador (@c) que va a ir incrementando según un intervalo de tiempo (@time = @sec + 1 ) , en este caso 1 segundo (es el que aparece a la derecha de @sec) y lo limite a que el contador llegue a 5 (en el while, para no hacerlo tan grande pero puede hacerse un bucle infinito para que funcione como un reloj y funcione exactamente como lo es con el famoso "Timer" o "setInterval").
@sec: Es el segundo REAL, obtenido del servidor donde esté alojada la base de datos. ( GETDATE() )
@time: Es a donde tiene que llegar el segundero para poder cumplir la acción (es un select, pero por ejemplo puede expandirse con EXEC (@syntaxSql) para hacerlo más customizable)
Funciona en SQL Server 2000/2005/2008/2008 R2
Básicamente, hay un contador (@c) que va a ir incrementando según un intervalo de tiempo (@time = @sec + 1 ) , en este caso 1 segundo (es el que aparece a la derecha de @sec) y lo limite a que el contador llegue a 5 (en el while, para no hacerlo tan grande pero puede hacerse un bucle infinito para que funcione como un reloj y funcione exactamente como lo es con el famoso "Timer" o "setInterval").
@sec: Es el segundo REAL, obtenido del servidor donde esté alojada la base de datos. ( GETDATE() )
@time: Es a donde tiene que llegar el segundero para poder cumplir la acción (es un select, pero por ejemplo puede expandirse con EXEC (@syntaxSql) para hacerlo más customizable)
Funciona en SQL Server 2000/2005/2008/2008 R2
Comentarios sobre la versión: Versión 1 (4)
Por ejemplo, Linea 19, cambia el 5 por las veces que quieres que se ejecute.
Linea 28, cambia el 1 por la cantidad de segundos para que transcurra de nuevo (300 es cada 5 minutos, por ejemplo)
Y la linea 25 será el script que quieres se ejecute.
Lo implementaré en una mesa de servicio para monitorear algunas actividades sin generar un job.
Muchas Gracias.