Ich weiß SELECT * FROM msdb..sysjobschedules
, dass es das gibt , aber das zeigt nur das nächste Mal, wenn ein Job ausgeführt werden soll.
Ich möchte wissen, wie das alles bestimmt und gespeichert wird. Wo speichert es also den Wert für das Kontrollkästchen "Jeden Montag wiederholen"?
sql-server
t-sql
jobs
Joe
quelle
quelle
sp_add_schedule
oder fügt sie in diese Tabelle ein.msdb.dbo.sysschedules
. Überprüfen Sie die MSDN- Seite.Antworten:
Alle 20 Minuten (dies scheint NICHT konfigurierbar zu sein) werden die 'next run'-Informationen in
sysjobschedules
aktualisiert, indem Sie sich die Informationen ansehen, die Sie in sehen könnensysschedules
.Sie wissen, wie Sie bei der Definition eines Jobs einen etwas komplizierten Prozess durchlaufen müssen, anstatt nur zu sagen, dass Sie diesen Job jeden Montag ausführen, stattdessen einen Zeitplan zu definieren , der dies besagt, und den Job mit dem Zeitplan zu verknüpfen. Deshalb haben sie unabhängige Existenzen.
quelle
Und wenn Sie die Informationen
sysschedules
mit Ihren Auftragsinformationen verknüpfen möchten :quelle
Um die Antwort von Josien zu erläutern, einen schönen Beitrag, in dem alle Job-bezogenen sys-Entitäten zusammengeführt werden, und eine Reihe von Fragen, die Sie in den darin enthaltenen Informationen nachlesen können: https://www.mssqltips.com/sqlservertip/2561/querying-sql -server-agent-job-information /
Ich fand es besonders hilfreich, wenn ich eine ähnliche Frage hatte und einen Bericht über alle Agentenjobs in unserer Umgebung erstellen musste, damit Entwickler und andere Datenbankadministratoren sie betrachten und den Kontext bereitstellen konnten. Prost!
quelle