sp_altermessage (Transact-SQL)
Modifie l'état des messages système ou définis par l'utilisateur dans une instance du Moteur de base de données SQL Server. Les messages définis par l'utilisateur peuvent être affichés à l'aide de l'affichage catalogue sys.messages.
S'applique à : SQL Server (SQL Server 2008 via la version actuelle). |
Conventions de la syntaxe Transact-SQL
Syntaxe
sp_altermessage [ @message_id = ] message_number ,[ @parameter = ]'write_to_log'
,[ @parameter_value = ]'value'
Arguments
[@message_id = ] message_number
Numéro d'erreur du message à modifier à partir de sys.messages. message_number est de type int sans valeur par défaut.[ @parameter = ] **'**write_to_log'
Utilisé avec l'argument @parameter_value pour indiquer que le message doit être écrit dans le journal des applications Microsoft Windows. write_to_log est de type sysname sans valeur par défaut. write_to_log doit avoir la valeur WITH LOG ou NULL. Si l'argument write_to_log a la valeur WITH_LOG ou NULL et que la valeur de @parameter_value est égale à true, le message est écrit dans le journal des applications Windows. Si write_to_log a la valeur WITH_LOG ou NULL et que la valeur de @parameter_value est égale à false, le message n'est pas toujours écrit dans le journal des applications Windows, mais il peut l'être selon les circonstances dans lesquelles l'erreur s'est déclenchée. Si l'argument write_to_log est spécifié, la valeur de @parameter_value doit l'être aussi.Notes
Si un message est écrit dans le journal des applications Windows, il l'est également dans le fichier du journal des erreurs du Moteur de base de données.
[ @parameter_value = ]**'**value'
Utilisé avec l'argument @parameter pour indiquer que l'erreur doit être écrite dans le journal des applications Microsoft Windows. value est de type varchar(5) sans valeur par défaut. Si sa valeur est true, l'erreur est automatiquement écrite dans le journal des applications Windows. Si sa valeur est false, l'erreur n'est pas automatiquement écrite dans le journal des applications Windows mais elle peut l'être selon les circonstances de la génération de l'erreur. Si l'argument value est spécifié, la valeur de write_to_log pour @parameter doit également l'être.
Valeurs des codes de retour
0 (succès) ou 1 (échec)
Jeux de résultats
Aucun
Notes
L'effet de la procédure stockée sp_altermessage avec l'option WITH_LOG est identique à celui du paramètre RAISERROR WITH LOG, si ce n'est que sp_altermessage modifie le comportement de journalisation d'un message existant. Si un message a été modifié avec l'option WITH_LOG, il est toujours écrit dans le journal des applications Windows, quelle que soit la manière dont un utilisateur appelle l'erreur. Même si RAISERROR est exécuté sans l'option WITH_LOG, l'erreur est écrite dans le journal des applications Windows.
Les messages système peuvent être modifiés à l'aide de sp_altermessage.
Autorisations
L'utilisateur doit appartenir au rôle de serveur fixe serveradmin.
Exemples
Dans l'exemple suivant, le message 55001 est enregistré dans le journal des applications Windows.
EXECUTE sp_altermessage 55001, 'WITH_LOG', 'true';
GO