xp_logevent (Transact-SQL)

Inscrit un message défini par l'utilisateur dans le fichier journal de SQL Server et dans l'Observateur d'événements Windows. xp_logevent peut être utilisé pour envoyer une alerte sans envoyer de message au client.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

xp_logevent { error_number , 'message' } [ , 'severity' ]

Arguments

  • error_number
    Numéro d'erreur défini par l'utilisateur, supérieur à 50 000. La valeur maximale est 2 147 483 647 (2^31 - 1).
  • 'message'
    Chaîne de caractères d’une longueur maximale de 255 caractères.
  • 'severity'
    Une des trois chaînes de caractères : INFORMATIONAL, WARNING ou ERROR. severity est facultatif, avec INFORMATIONAL comme valeur par défaut.

Jeux de résultats

xp_logevent retourne ce message d'erreur pour l'exemple de code ci-dessous :

The command(s) completed successfully.

Notes

Lorsque vous envoyez des messages à partir de procédures Transact-SQL, de déclencheurs, de lots d'instructions, etc., utilisez l'instruction RAISERROR au lieu de xp_logevent. xp_logevent n'appelle pas de gestionnaire de message du client et ne définit pas @@ERROR. Pour écrire des messages dans l'Observateur d'événements Windows et dans le journal des erreurs de SQL Server dans une instance SQL Server, exécutez l'instruction RAISERROR.

Autorisations

Il faut appartenir au rôle de base de données fixe db_owner de la base de données master ou au rôle serveur fixe sysadmin.

Valeurs des codes renvoyés

0 (succès) ou 1 (échec)

Exemple

Cet exemple enregistre le message dans l'Observateur d'événements Windows et transmet les variables au message.

DECLARE @@TABNAME varchar(30)
DECLARE @@USERNAME varchar(30)
DECLARE @@MESSAGE varchar(255)
SET @@TABNAME = 'customers'
SET @@USERNAME = USER_NAME()
SELECT @@MESSAGE = 'The table ' + @@TABNAME + ' is not owned by the user 
   ' + @@USERNAME + '.'

USE master
EXEC xp_logevent 60000, @@MESSAGE, informational

Voir aussi

Référence

PRINT (Transact-SQL)
RAISERROR (Transact-SQL)
Procédures stockées système (Transact-SQL)
Procédures stockées étendues générales (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005