sp_add_jobschedule (Transact-SQL)
Erstellt einen Zeitplan für einen Auftrag.
Syntax
sp_add_jobschedule [ @job_id = ] job_id, | [ @job_name = ] 'job_name', [ @name = ] 'name'
[ , [ @enabled = ] enabled_flag ]
[ , [ @freq_type = ] frequency_type ]
[ , [ @freq_interval = ] frequency_interval ]
[ , [ @freq_subday_type = ] frequency_subday_type ]
[ , [ @freq_subday_interval = ] frequency_subday_interval ]
[ , [ @freq_relative_interval = ] frequency_relative_interval ]
[ , [ @freq_recurrence_factor = ] frequency_recurrence_factor ]
[ , [ @active_start_date = ] active_start_date ]
[ , [ @active_end_date = ] active_end_date ]
[ , [ @active_start_time = ] active_start_time ]
[ , [ @active_end_time = ] active_end_time ]
[ , [ @schedule_id = ] schedule_id OUTPUT ]
Argumente
[ @job_id= ] job_id
Die ID des Auftrags, für den der Zeitplan hinzugefügt wird. job_id ist vom Datentyp uniqueidentifier und weist keinen Standardwert auf.[ @job_name= ] 'job_name'
Der Name des Auftrags, für den der Zeitplan hinzugefügt wird. job_name ist vom Datentyp nvarchar(128) und weist keinen Standardwert auf.Hinweis Es muss entweder job_id oder job_name angegeben werden, aber beide Angaben sind nicht möglich.
[ @name= ] 'name'
Der Name des Zeitplans. name ist vom Datentyp nvarchar(128) und weist keinen Standardwert auf.[ @enabled= ] enabled_flag
Gibt den aktuellen Status des Zeitplans an. enabled_flag ist vom Datentyp tinyint, der Standardwert ist 1 (aktiviert). Mit 0 wird der Zeitplan deaktiviert. Wenn der Zeitplan deaktiviert ist, wird der Auftrag nicht ausgeführt.[ @freq_type= ] frequency_type
Ein Wert, der angibt, wann der Auftrag ausgeführt werden soll. frequency_type ist vom Datentyp int, der Standardwert ist 0. Die folgenden Werte sind möglich:Value
Beschreibung
1
Einmaliger Zeitplan
4
Täglicher Zeitplan
8
Wöchentlicher Zeitplan
16
Monatlicher Zeitplan
32
Monatlich, relativ zu frequency_interval.
64
Ausführen, wenn der SQL Server-Agent-Dienst gestartet wird.
128
Ausführen, wenn sich der Computer im Leerlauf befindet.
[ @freq_interval= ] frequency_interval
Der Tag, an dem der Auftrag ausgeführt wird. frequency_interval ist vom Datentyp int, der Standardwert ist 0. Der Wert hängt vom Wert von frequency_type ab, wie in der folgenden Tabelle angegeben:Value
Wirkung
1 (einmal)
frequency_interval wird nicht verwendet.
4 (täglich)
Alle frequency_interval Tage.
8 (wöchentlich)
Für frequency_interval sind einer oder mehrere der folgenden Werte möglich (mit dem logischen OR-Operator verknüpft):
1 = Sonntag
2 = Montag
4 = Dienstag
8 = Mittwoch
16 = Donnerstag
32 = Freitag
64 = Samstag
16 (monatlich)
Am frequency_interval-Tag des Monats.
32 (mit relativem Monatsintervall)
frequency_interval ist einer der folgenden Werte:
1 = Sonntag
2 = Montag
3 = Dienstag
4 = Mittwoch
5 = Donnerstag
6 = Freitag
7 = Samstag
8 = Tag
9 = Arbeitstag
10 = Wochenendtag
64 (Wenn der SQL Server-Agent-Dienst gestartet wird)
frequency_interval wird nicht verwendet.
128
frequency_interval wird nicht verwendet.
[ @freq_subday_type= ] frequency_subday_type
Gibt die Einheiten für frequency_subday_interval an. frequency_subday_type ist vom Datentyp int und weist keinen Standardwert auf. Folgende Werte sind möglich:Value
Beschreibung (Einheit)
0x1
Zum angegebenen Zeitpunkt
0x4
Minuten
0x8
Stunden
[ @freq_subday_interval= ] frequency_subday_interval
Die Anzahl der frequency_subday_type-Perioden zwischen den Ausführungsinstanzen des Auftrags. frequency_subday_interval ist vom Datentyp int, der Standardwert ist 0.[ @freq_relative_interval= ] frequency_relative_interval
Definiert frequency_interval näher, wenn frequency_type auf 32 (Mit relativem Monatsintervall) festgelegt ist.frequency_relative_interval ist vom Datentyp int und weist keinen Standardwert auf. Folgende Werte sind möglich:
Value
Beschreibung (Einheit)
1
Erster
2
Zweiter
4
Dritter
8
Vierter
16
Letzter
frequency_relative_interval zeigt das Auftreten des Intervalls an. Wenn beispielsweise frequency_relative_interval auf 2, frequency_type auf 32 und frequency_interval auf 3 festgelegt ist, wird der geplante Auftrag am zweiten Dienstag jedes Monats ausgeführt.
[ @freq_recurrence_factor= ] frequency_recurrence_factor
Die Anzahl der Wochen oder Monate zwischen den geplanten Ausführungen des Auftrags. frequency_recurrence_factor wird nur verwendet, wenn frequency_type auf 8, 16 oder 32 festgelegt ist. frequency_recurrence_factor ist vom Datentyp int, der Standardwert ist 0.[ @active_start_date= ] active_start_date
Datum, an dem die Auftragsausführung beginnen kann. active_start_date ist vom Datentyp int und weist keinen Standardwert auf. Für das Datum wird das Format YYYYMMDD verwendet. Wenn active_start_date festgelegt wird, muss das Datum größer oder gleich 19900101 sein.Überprüfen Sie nach dem Erstellen des Zeitplans, ob das Startdatum korrekt ist. Weitere Informationen finden Sie im Abschnitt "Planen von Startdaten" in Anlegen und Zuweisen von Zeitplänen zu Aufträgen.
[ @active_end_date= ] active_end_date
Datum, an dem die Auftragsausführung enden kann. active_end_date ist vom Datentyp int und weist keinen Standardwert auf. Für das Datum wird das Format YYYYMMDD verwendet.[ @active_start_time= ] active_start_time
Uhrzeit an einem beliebigen Tag in dem durch active_start_date und active_end_date definierten Zeitraum, zu der die Auftragsausführung beginnt. active_start_time ist vom Datentyp int und weist keinen Standardwert auf. Für die Uhrzeit wird das Format HHMMSS und eine 24-Stunden-Schreibweise verwendet.[ **@active_end_time=**active_end_time
Uhrzeit an einem beliebigen Tag in dem durch active_start_date und active_end_date definierten Zeitraum, zu der die Auftragsausführung endet. active_end_time ist vom Datentyp int und weist keinen Standardwert auf. Für die Uhrzeit wird das Format HHMMSS und eine 24-Stunden-Schreibweise verwendet.[ @schedule_id=schedule_idOUTPUT
Die Zeitplan-ID, die dem Zeitplan zugewiesen wird, wenn er erfolgreich erstellt wird. schedule_id ist eine Ausgabevariable vom Typ int und weist keinen Standardwert auf.[ @schedule_uid= ] schedule_uidOUTPUT
Ein eindeutiger Bezeichner für den Zeitplan. schedule_uid ist eine Variable vom Typ uniqueidentifier.
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Resultsets
Keine
Hinweise
Auftragszeitpläne können jetzt unabhängig von Aufträgen verwaltet werden. Wenn Sie einem Auftrag einen Zeitplan hinzufügen möchten, erstellen Sie den Zeitplan mithilfe von sp_add_schedule, und fügen Sie den Zeitplan mithilfe von sp_attach_schedule einem Auftrag hinzu.
Berechtigungen
Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin diese gespeicherte Prozedur ausführen. Anderen Benutzern muss eine der folgenden festen Datenbankrollen des SQL Server-Agents in der msdb-Datenbank zugewiesen werden:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Ausführliche Informationen zu den Berechtigungen dieser Rollen finden Sie unter Feste Datenbankrollen des SQL Server-Agents.
Änderungsverlauf
Aktualisierter Inhalt |
---|
Der Parameter für das Startdatum enthält Informationen über die Bestätigung des Startdatums, nachdem ein Zeitplan erstellt wurde. |
Siehe auch