sp_add_jobschedule (Transact-SQL)
Erstellt einen Zeitplan für einen Auftrag.
Transact-SQL-Syntaxkonventionen
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 ]
Arguments
[ @job_id= ] job_id
Die ID des Auftrags, dem der Zeitplan hinzugefügt wird. job_id ist vom Datentyp uniqueidentifier und hat keinen Standardwert.[ @job_name= ] 'job_name'
Der Name des Auftrags, dem der Zeitplan hinzugefügt wird. job_name ist vom Datentyp nvarchar(128) und hat keinen Standardwert.Hinweis Es muss entweder job_id oder job_name angegeben werden, aber beide Angaben sind nicht möglich.
[ @name= ] 'name'
Name des Zeitplans. name ist vom Datentyp nvarchar(128) und hat keinen Standardwert.[ @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 und hat den Standardwert 0. Folgende Werte sind möglich:Wert
Beschreibung
1
Einmal
4
Täglich
8
Wöchentlich
16
Monatlich
32
Monatlich, relativ zum Wert von 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, und der Standardwert ist 0. Der Wert hängt vom Wert von frequency_type ab, wie in der folgenden Tabelle angegeben:Wert
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 hat keinen Standardwert. Folgende Werte sind möglich:Wert
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 hat keinen Standardwert. Folgende Werte sind möglich:
Wert
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, 16oder 32 festgelegt ist. frequency_recurrence_factor ist vom Datentyp int. Der Standardwert ist 0.[ @active_start_date= ] active_start_date
Das Datum, an dem Ausführung des Auftrags beginnen kann. active_start_date ist vom Datentyp int und hat keinen Standardwert. 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
Das Datum, an dem die Ausführung des Auftrags beendet werden kann. active_end_date ist vom Datentyp int und hat keinen Standardwert. Für das Datum wird das Format YYYYMMDD verwendet.[ @active_start_time= ] active_start_time
Die Uhrzeit an einem beliebigen Tag zwischen active_start_date und active_end_date, an dem die Ausführung eines Auftrags gestartet werden soll. active_start_time ist vom Datentyp int und hat keinen Standardwert. Für die Uhrzeit wird das Format HHMMSS und eine 24-Stunden-Schreibweise verwendet.[ **@active_end_time=**active_end_time
Die Uhrzeit an einem beliebigen Tag zwischen active_start_date und active_end_date, an dem die Ausführung eines Auftrags beendet werden soll. active_end_time ist vom Datentyp int und hat keinen Standardwert. 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 ohne Standardwert.[ @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
Weitere Informationen zu den Berechtigungen dieser Rollen finden Sie unter Feste Datenbankrollen des SQL Server-Agents.
Siehe auch
Verweis
Gespeicherte Prozeduren des SQL Server-Agents (Transact-SQL)
sp_add_schedule (Transact-SQL)
sp_update_schedule (Transact-SQL)
sp_delete_schedule (Transact-SQL)
sp_help_schedule (Transact-SQL)
sp_attach_schedule (Transact-SQL)