¿Cómo almacena SQL Server la información en Propiedades de programación de trabajos?

12

Sé que hay SELECT * FROM msdb..sysjobschedules, pero eso solo muestra la próxima vez que un trabajo está programado para ejecutarse.

Quiero saber cómo se determina y almacena todo esto. Entonces, ¿dónde almacena el valor de la casilla de verificación Recurs cada lunes?

joe
fuente
echa un vistazo a select * from msdb.dbo.sysschedules el procedimiento almacenado del sistema sp_add_scheduleactualiza o inserta en esta tabla.
Creo que la información se almacena en msdb.dbo.sysschedules. Echa un vistazo a la página msdn .

Respuestas:

8

Cada 20 minutos (esto parece NO ser configurable), la información de la 'próxima ejecución' sysjobschedulesse actualiza mirando la información que puede ver en sysschedules.

¿Sabes cómo cuando defines un trabajo tienes que pasar por un proceso un poco complicado en lugar de solo decir 'ejecuta este trabajo todos los lunes', en lugar de definir un horario que diga eso y asociar el trabajo con el horario? Es por eso que tienen existencias independientes.

AakashM
fuente
6

Y si desea vincular la información a la información sysschedulesde su trabajo:

use msdb;

select SYSJ.name, SYSS.* from sysjobs as SYSJ
inner join sysjobschedules as SYSJS on SYSJ.job_id = SYSJS.job_id
inner join sysschedules SYSS on SYSS.schedule_id = SYSJS.schedule_id;

fuente
0

Para dar más detalles sobre la respuesta de Josien, una buena publicación que une todas las entidades del sistema relacionadas con el trabajo y le brinda un buen conjunto de consultas para ver la información allí: https://www.mssqltips.com/sqlservertip/2561/querying-sql -server-agent-job-information /

Me resultó particularmente útil cuando tenía una pregunta similar y necesitaba elaborar un informe de todos los trabajos de agentes en nuestro entorno para que Dev y otros DBA pudieran verlos y proporcionar contexto. ¡Salud!

NateJ
fuente