Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Gilt für:SQL Server
Ändert den Status von benutzerdefinierten oder Systemmeldungen in einer Instanz der SQL Server-Datenbank-Engine. Benutzerdefinierte Nachrichten können mithilfe der sys.messages Katalogansicht angezeigt werden.
Transact-SQL-Syntaxkonventionen
Syntax
sp_altermessage
[ @message_id = ] message_id
, [ @parameter = ] N'parameter'
, [ @parameter_value = ] 'parameter_value'
[ ; ]
Argumente
[ @message_id = ] message_id
Die Fehlernummer der Zu ändernden Nachricht.sys.messages
@message_id ist "int" ohne Standard.
[ @parameter = ] N'parameter'
Wird mit @parameter_value verwendet, um anzugeben, dass die Nachricht in das Windows-Anwendungsprotokoll geschrieben werden soll. @parameter ist "sysname" ohne Standard.
@parameter muss auf WITH_LOG oder NULL. Wenn @parameter auf WITH_LOG oder NULL, und der Wert für @parameter_value ist true, wird die Nachricht in das Windows-Anwendungsprotokoll geschrieben. Wenn @parameter auf WITH_LOG oder NULL den Wert für false festgelegt ist, wird die Nachricht nicht immer in das Windows-Anwendungsprotokoll geschrieben, kann jedoch abhängig davon geschrieben werden, wie der Fehler ausgelöst wurde.
Wenn eine Nachricht in das Windows-Anwendungsprotokoll geschrieben wird, wird sie auch in die Fehlerprotokolldatei des Datenbankmoduls geschrieben.
Wenn @parameter angegeben ist, muss auch @parameter_value angegeben werden.
[ @parameter_value = ] 'parameter_value'
Wird mit @parameter verwendet, um anzugeben, dass der Fehler in das Windows-Anwendungsprotokoll geschrieben werden soll. @parameter_value ist varchar(5) ohne Standard.
- Wenn
trueder Fehler immer in das Windows-Anwendungsprotokoll geschrieben wird. - Wenn
falseder Fehler nicht immer in das Windows-Anwendungsprotokoll geschrieben wird, kann aber abhängig davon geschrieben werden, wie der Fehler ausgelöst wurde.
Wenn @parameter_value angegeben ist, muss auch @parameter angegeben werden.
Rückgabecodewerte
0 (erfolgreich) oder 1 Fehler.
Resultset
Keine.
Hinweise
Die Auswirkung mit sp_altermessage der Option ähnelt dem WITH_LOG des RAISERROR WITH LOG Parameters, mit der Ausnahme, dass sp_altermessage das Protokollierungsverhalten einer vorhandenen Nachricht geändert wird. Wenn eine Nachricht geändert WITH_LOGwird, wird sie immer in das Windows-Anwendungsprotokoll geschrieben, unabhängig davon, wie ein Benutzer den Fehler aufruft. Auch wenn RAISERROR ohne die WITH_LOG Option ausgeführt wird, wird der Fehler in das Windows-Anwendungsprotokoll geschrieben.
Systemnachrichten können mithilfe von sp_altermessage.
Berechtigungen
Erfordert die Mitgliedschaft in der Serveradmin-Serverrolle mit fester Serverrolle.
Beispiele
Im folgenden Beispiel wird die vorhandene Nachricht 55001 in das Windows-Anwendungsprotokoll geschrieben.
EXECUTE sp_altermessage 55001, 'WITH_LOG', 'true';
GO