sp_altermessage (Transact-SQL)

 

DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)neinAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data Warehouse

Ändert den Status von benutzerdefinierten oder Systemmeldungen in einer Instanz von SQL Server-Datenbankmodul. Benutzerdefinierte Meldungen können mithilfe der sys.messages -Katalogsicht angezeigt werden.

Topic link icon Transact-SQL-Syntaxkonventionen

  
sp_altermessage [ @message_id = ] message_number   ,[ @parameter = ]'write_to_log'  
   ,[ @parameter_value = ]'value'   

[@message_id = ] message_number
Ist die Fehlernummer der zu ändernden Meldung sys.messages. Message_number ist Int verfügt über keinen Standardwert.

[ @parameter = ] 'write_to_log'
Wird verwendet, mit ** @parameter_value ** , um anzugeben, dass die Meldung an die Microsoft Windows-Anwendungsprotokoll. Write_to_log ist Sysname verfügt über keinen Standardwert. Write_to_log muss auf WITH_LOG oder NULL festgelegt werden. Wenn Write_to_log auf WITH_LOG oder NULL, und der Wert für festgelegt ** @parameter_value ** ist "true", wird die Meldung in das Windows-Anwendungsprotokoll geschrieben. Wenn Write_to_log festgelegt ist, auf WITH_LOG oder NULL und der Wert für ** @parameter_value ** ist "false", die Nachricht nicht immer in das Windows-Anwendungsprotokoll geschrieben, aber möglicherweise werden in Abhängigkeit davon, wie er ausgelöst wurde. Wenn Write_to_log angegeben wird, den Wert für ** @parameter_value ** muss auch angegeben werden.

System_CAPS_ICON_note.jpg Hinweis


Wenn eine Meldung in das Windows-Anwendungsprotokoll geschrieben wird, wird sie auch in die Datenbankmodul-Fehlerprotokolldatei geschrieben.

[ @parameter_value = ]'value'
Wird verwendet, mit ** @parameter ** , um anzugeben, dass der Fehler an die Microsoft Windows-Anwendungsprotokoll. Wert ist varchar(5), verfügt über keinen Standardwert. Wenn "true", der Fehler immer in das Windows-Anwendungsprotokoll geschrieben. Wenn "false", der Fehler nicht immer in das Windows-Anwendungsprotokoll geschrieben, sondern kann in Abhängigkeit davon, wie er ausgelöst wurde. Wenn Wert angegeben wird, Write_to_log für ** @parameter ** muss auch angegeben werden.

0 (Erfolg) oder 1 (Fehler)

Keine

Die Auswirkung der Sp_altermessage Option mit der Option WITH_LOG aktiviert ist ähnelt der des RAISERROR WITH LOG-Parameters, außer dass Sp_altermessage das Protokollierverhalten einer vorhandenen Meldung ändert. Wenn eine Meldung so geändert wurde, dass für sie die Option WITH_LOG aktiviert ist, wird sie immer in das Windows-Anwendungsprotokoll geschrieben, unabhängig davon, wie ein Benutzer den Fehler auslöst. Selbst wenn RAISERROR ohne die Option WITH_LOG ausgeführt wird, wird der Fehler in das Windows-Anwendungsprotokoll geschrieben.

Systemmeldungen können geändert werden, mithilfe von Sp_altermessage.

Erfordert die Mitgliedschaft in der Serveradmin festen Serverrolle "".

In diesem Beispiel wird die vorhandene Meldung 55001 im Windows-Anwendungsprotokoll protokolliert.

EXECUTE sp_altermessage 55001, 'WITH_LOG', 'true';  
GO  

RAISERROR (Transact-SQL)
Sp_addmessage (Transact-SQL)
Sp_dropmessage (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)

Community-Beiträge

HINZUFÜGEN
Anzeigen: