Eu sei que existe SELECT * FROM msdb..sysjobschedules
, mas isso só mostra na próxima vez que um trabalho está programado para ser executado.
Quero saber como tudo isso é determinado e armazenado. Então, onde ele armazena o valor para a caixa de seleção Recurs toda segunda-feira?
sql-server
t-sql
jobs
Joe
fonte
fonte
sp_add_schedule
atualiza ou insere nesta tabela.msdb.dbo.sysschedules
. Confira a página msdn .Respostas:
A cada 20 minutos (isso NÃO parece configurável), as informações da 'próxima execução'
sysjobschedules
são atualizadas , observando as informações que você pode versysschedules
.Você sabe como, quando define um trabalho, precisa passar por um processo um pouco complicado, em vez de apenas dizer "executar este trabalho toda segunda-feira", em vez de definir um cronograma que diz isso e associar o trabalho ao cronograma? É por isso - eles têm existências independentes.
fonte
E se você deseja vincular as informações às informações do
sysschedules
seu trabalho:fonte
Para elaborar a resposta de Josien, um bom post amarrando todas as entidades do sistema relacionadas ao trabalho e fornecendo um bom conjunto de consultas para consultar as informações: https://www.mssqltips.com/sqlservertip/2561/querying-sql -server-agent-job-information /
Achei isso particularmente útil quando tive uma pergunta semelhante e precisava criar um relatório de todos os trabalhos de agentes em nosso ambiente, para que os Dev's e outros DBAs pudessem analisá-los e fornecer contexto. Felicidades!
fonte