sp_update_alert (Transact-SQL)

Aktualisiert die Einstellungen einer vorhandenen Warnung.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sp_update_alert 
     [ @name =] 'name' 
     [ , [ @new_name =] 'new_name'] 
     [ , [ @enabled =] enabled] 
     [ , [ @message_id =] message_id] 
     [ , [ @severity =] severity] 
     [ , [ @delay_between_responses =] delay_between_responses] 
     [ , [ @notification_message =] 'notification_message'] 
     [ , [ @include_event_description_in =] include_event_description_in] 
     [ , [ @database_name =] 'database'] 
     [ , [ @event_description_keyword =] 'event_description_keyword'] 
     [ , [ @job_id =] job_id | [@job_name =] 'job_name'] 
     [ , [ @occurrence_count = ] occurrence_count] 
     [ , [ @count_reset_date =] count_reset_date] 
     [ , [ @count_reset_time =] count_reset_time] 
     [ , [ @last_occurrence_date =] last_occurrence_date] 
     [ , [ @last_occurrence_time =] last_occurrence_time] 
     [ , [ @last_response_date =] last_response_date] 
     [ , [ @last_response_time =] last_response _time]
     [ , [ @raise_snmp_trap =] raise_snmp_trap]
     [ , [ @performance_condition =] 'performance_condition' ] 
     [ , [ @category_name =] 'category']
     [ , [ @wmi_namespace = ] 'wmi_namespace' ]
     [ , [ @wmi_query = ] 'wmi_query' ]

Argumente

  • [ @name =] 'name'
    Der Name der Warnung, die aktualisiert werden soll. name ist ein Wert vom Datentyp sysname und weist keinen Standardwert auf.

  • [ @new_name =] 'new_name'
    Ein neuer Name für die Warnung. Der Name muss eindeutig sein. new_name ist vom Datentyp sysname und hat den Standardwert NULL.

  • [ @enabled =] enabled
    Gibt an, ob die Warnung aktiviert (1) oder deaktiviert (0) ist. enabled ist ein Wert vom Datentyp tinyint; der Standardwert ist NULL. Eine Warnung muss aktiviert sein, um ausgelöst werden zu können.

  • [ @message_id =] message_id
    Eine neue Meldungs- oder Fehlernummer für die Warnungsdefinition. message_id entspricht in der Regel einer Fehlernummer in der sysmessages-Tabelle. message_id ist vom Datentyp int; der Standardwert ist NULL. Eine Meldungs-ID kann nur verwendet werden, wenn der Schweregrad der Warnung die Einstellung 0 aufweist.

  • [ @severity =] severity
    Ein neuer Schweregrad (von 1 bis 25) für die Warnungsdefinition. Mit jeder Microsoft SQL Server-Meldung, die mit dem angegebenen Schweregrad an das Windows-Anwendungsprotokoll gesendet wird, wird die Warnung aktiviert. severity ist vom Datentyp int; der Standardwert ist NULL. Der Schweregrad kann nur verwendet werden, wenn für die Warnung eine Meldungs-ID mit dem Wert 0 festgelegt ist.

  • [ @delay_between_responses =] delay_between_responses
    Die neue Wartezeit (in Sekunden) zwischen den Reaktionen auf die Warnung. delay_between_responses ist ein Wert vom Datentyp int; der Standardwert ist NULL.

  • [ @notification_message =] 'notification_message'
    Der überarbeitete Text einer zusätzlichen Meldung, die als Teil der E-Mail-, net send- oder Pagerbenachrichtigung an den Operator gesendet wird. notification_message ist vom Datentyp nvarchar(512) und hat den Standardwert NULL.

  • [ @include_event_description_in =] include_event_description_in
    Gibt an, ob die Beschreibung des SQL Server-Fehlers aus dem Windows-Anwendungsprotokoll in die Warnbenachrichtigung eingeschlossen werden soll. include_event_description_in ist ein Wert vom Datentyp tinyint; der Standardwert ist NULL. Einer oder mehrere der folgenden Werte sind möglich.

    Wert

    Beschreibung

    0

    Keine

    1

    E-Mail

    2

    Pager

    4

    net send

    7

    Alle

  • [ @database_name =] 'database'
    Der Name der Datenbank, in der der Fehler auftreten muss, damit die Warnung ausgelöst wird. database ist ein Wert vom Datentyp sysname.. In eckige Klammern ([ ]) eingeschlossene Namen sind nicht zulässig. Der Standardwert ist NULL.

  • [ @event_description_keyword =] 'event_description_keyword'
    Eine Folge von Zeichen, die in der Beschreibung des Fehlers im Fehlermeldungsprotokoll enthalten sein muss. Dabei können Platzhalterzeichen für Mustervergleiche wie im Transact-SQL-Ausdruck LIKE verwendet werden. event_description_keyword ist vom Datentyp nvarchar(100) und hat den Standardwert NULL. Dieser Parameter ist hilfreich beim Filtern von Objektnamen (z. B. %customer_table%).

  • [ @job_id =] job_id
    Die ID des Auftrags. job_id ist vom Datentyp uniqueidentifier; der Standardwert ist NULL. Wenn job_id angegeben wird, muss job_name weggelassen werden.

  • [ @job_name =] 'job_name'
    Der Name des Auftrags, der als Reaktion auf diese Warnung ausgeführt wird. job_name ist vom Datentyp sysname; der Standardwert ist NULL. Wenn job_name angegeben wird, muss job_id weggelassen werden.

  • [ @occurrence_count = ] occurrence_count
    Setzt den Wert für die Häufigkeit, mit der die Warnung aufgetreten ist, zurück. occurrence_count ist ein Wert vom Datentyp int; der Standardwert ist NULL. Der Wert kann nur auf 0 festgelegt werden.

  • [ @count_reset_date =] count_reset_date
    Setzt das Datum zurück, an dem die Warnungsanzahl zuletzt zurückgesetzt wurde. count_reset_date ist ein Wert vom Datentyp int; der Standardwert ist NULL.

  • [ @count_reset_time =] count_reset_time
    Setzt die Uhrzeit zurück, zu der die Warnungsanzahl zuletzt zurückgesetzt wurde. count_reset_time ist ein Wert vom Datentyp int; der Standardwert ist NULL.

  • [ @last_occurrence_date =] last_occurrence_date
    Setzt das Datum zurück, an dem die Warnung zuletzt aufgetreten ist. last_occurrence_date ist ein Wert vom Datentyp int; der Standardwert ist NULL. Der Wert kann nur auf 0 festgelegt werden.

  • [ @last_occurrence_time =] last_occurrence_time
    Setzt die Uhrzeit zurück, zu der die Warnung zuletzt aufgetreten ist. last_occurrence_time ist ein Wert vom Datentyp int; der Standardwert ist NULL. Der Wert kann nur auf 0 festgelegt werden.

  • [ @last_response_date =] last_response_date
    Setzt das Datum zurück, an dem der SQLServerAgent-Dienst das letzte Mal auf die Warnung reagiert hat. last_response_date ist ein Wert vom Datentyp int; der Standardwert ist NULL. Der Wert kann nur auf 0 festgelegt werden.

  • [ @last_response_time =] last_response_time
    Setzt die Uhrzeit der letzten Reaktion des SQLServerAgent-Diensts auf die Warnung zurück. last_response_time ist vom Datentyp int; der Standardwert ist NULL. Der Wert kann nur auf 0 festgelegt werden.

  • [ @raise_snmp_trap =] raise_snmp_trap
    Reserviert.

  • [ @performance_condition =] 'performance_condition'
    Ein Wert im Format 'itemcomparatorvalue'. performance_condition ist vom Datentyp nvarchar(512). Der Standardwert ist NULL. Der Wert besteht aus den folgenden Elementen.

    Formatelement

    Beschreibung

    Item

    Ein Leistungsobjekt, ein Leistungsindikator oder die benannte Instanz des Indikators

    Comparator

    Einer der folgenden Operatoren: >, <, =

    Value

    Numerischer Wert des Indikators

  • [ @category_name =] 'category'
    Der Name der Warnungskategorie. category ist vom Datentyp sysname und hat den Standardwert NULL.

  • [ @wmi_namespace= ] 'wmi_namespace'
    Der WMI-Namespace zum Abfragen von Ereignissen. wmi_namespace ist vom Datentyp sysname und hat den Standardwert NULL.

  • [ @wmi_query= ] 'wmi_query'
    Die Abfrage, die das WMI-Ereignis für die Warnung angibt. wmi_query ist vom Datentyp nvarchar(512) und hat den Standardwert NULL.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

Nur sysmessages-Meldungen, die in das Microsoft Windows-Anwendungsprotokoll geschrieben werden, können eine Warnung auslösen.

sp_update_alert ändert nur die Warnungseinstellungen, für die Parameterwerte angegeben werden. Wird ein Parameter nicht angegeben, wird die aktuelle Einstellung beibehalten.

Berechtigungen

Benutzer müssen der festen Serverrolle sysadmin angehören, um diese gespeicherte Prozedur ausführen zu können.

Beispiele

Im folgenden Beispiel wird die Aktivierungseinstellung von Test Alert in 0 geändert.

USE msdb ;
GO

EXEC dbo.sp_update_alert
    @name = N'Test Alert',
    @enabled = 0 ;
GO