Partage via


sp_altermessage (Transact-SQL)

S'applique à : SQL Server

Modifie l’état des messages définis par l’utilisateur ou système 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 sys.messages catalogue.

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_altermessage
    [ @message_id = ] message_id
    , [ @parameter = ] N'parameter'
    , [ @parameter_value = ] 'parameter_value'
[ ; ]

Arguments

[ @message_id = ] message_id

Numéro d’erreur du message à modifier.sys.messages @message_id est int, sans valeur par défaut.

[ @parameter = ] N’parameter'

Utilisé avec @parameter_value pour indiquer que le message doit être écrit dans le journal des applications Windows. @parameter est sysname, sans valeur par défaut.

@parameter doit être défini sur WITH_LOG ou NULL. Si @parameter est défini WITH_LOG sur ou NULL, et que la valeur de @parameter_value est true, le message est écrit dans le journal des applications Windows. Si @parameter est défini WITH_LOG sur ou NULL si la valeur de @parameter_value est false, le message n’est pas toujours écrit dans le journal des applications Windows, mais peut être écrit en fonction de la façon dont l’erreur a été générée.

Si un message est écrit dans le journal des applications Windows, il est également écrit dans le fichier journal des erreurs Moteur de base de données.

Si @parameter est spécifié, @parameter_value doit également être spécifié.

[ @parameter_value = ] 'parameter_value'

Utilisé avec @parameter pour indiquer que l’erreur doit être écrite dans le journal des applications Windows. @parameter_value est varchar(5), sans valeur par défaut.

  • Si true, l’erreur est toujours écrite dans le journal des applications Windows.
  • Si false, l’erreur n’est pas toujours écrite dans le journal des applications Windows, mais peut être écrite en fonction de la façon dont l’erreur a été générée.

Si @parameter_value est spécifié, @parameter doit également être spécifié.

Valeurs des codes de retour

0 (réussite) or 1 (échec).

Jeu de résultats

Aucune.

Notes

L’effet de sp_altermessage l’option WITH_LOG est similaire à celui du paramètre, sauf que sp_altermessage change le comportement de RAISERROR WITH LOG journalisation d’un message existant. Si un message est modifié en l’état WITH_LOG, il est toujours écrit dans le journal des applications Windows, quelle que soit la façon dont un utilisateur appelle l’erreur. Même si RAISERROR elle est exécutée sans option WITH_LOG , l’erreur est écrite dans le journal des applications Windows.

Les messages système peuvent être modifiés à l’aide sp_altermessagede .

autorisations

Nécessite l’appartenance au rôle serveur fixe serveradmin .

Exemples

L’exemple suivant écrit le message 55001 existant dans le journal des applications Windows.

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