sp_dropmessage (Transact-SQL)

Supprime un message d'erreur spécifié, défini par l'utilisateur, d'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.

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

Syntaxe

sp_dropmessage [ @msgnum = ] message_number
        [ , [ @lang = ] 'language' ]

Arguments

  • [ @msgnum = ] message_number
    Numéro du message à supprimer. message_number doit être un message défini par l'utilisateur dont le numéro est supérieur à 50000. message_number est de type int, avec NULL comme valeur par défaut.
  • [ @lang = ] 'language'
    Langue du message à supprimer. Si all est spécifié, les différentes versions linguistiques de message_number sont toutes supprimées. language est de type sysname, avec NULL comme valeur par défaut.

Valeurs des codes de retour

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

Jeux de résultats

Aucun.

Notes

À moins d'avoir spécifié la valeur all pour language, toutes les versions localisées d'un message doivent être supprimées avant de pouvoir supprimer la version en anglais américain du message.

Autorisations

L'utilisateur doit appartenir aux rôles de serveur fixes sysadmin et serveradmin.

Exemples

A. Suppression d'un message défini par l'utilisateur

L'exemple suivant supprime un message défini par l'utilisateur (numéro 50001) de l'affichage sys.messages.

USE master;
GO
EXEC sp_dropmessage 50001;

B. Suppression d'un message défini par l'utilisateur qui comprend une version localisée

L'exemple suivant supprime un message défini par l'utilisateur (numéro 60000) qui comprend une version localisée du message.

USE master;
GO

-- Create a user-defined message in U.S. English
EXEC sp_addmessage 
    @msgnum = 60000,
    @severity = 16,
    @msgtext = N'The item named %s already exists in %s.', 
    @lang = 'us_english';

-- Create a localized version of the same message.
EXEC sp_addmessage 
    @msgnum = 60000,
    @severity = 16,
    @msgtext = N'L''élément nommé %1! existe déjà dans %2!',
    @lang = 'French';
GO

-- This statement will fail as long as the localized version
-- of the message exists.
EXEC sp_dropmessage 60000;
GO

-- This statement will drop the message.
EXEC sp_dropmessage
    @msgnum = 60000,
    @lang = 'all';
GO

C. Suppression d'une version localisée d'un message défini par l'utilisateur

L'exemple suivant supprime une version localisée d'un message défini par l'utilisateur (numéro 60000) sans supprimer le message tout entier.

USE master;
GO

-- Create a user-defined message in U.S. English
EXEC sp_addmessage 
    @msgnum = 60000,
    @severity = 16,
    @msgtext = N'The item named %s already exists in %s.', 
    @lang = 'us_english';

-- Create a localized version of the same message.
EXEC sp_addmessage 
    @msgnum = 60000,
    @severity = 16,
    @msgtext = N'L''élément nommé %1! existe déjà dans %2!',
    @lang = 'French';
GO
-- This statement will remove only the localized version of the 
-- message.
EXEC sp_dropmessage
    @msgnum = 60000,
    @lang = 'French';
GO

Voir aussi

Référence

RAISERROR (Transact-SQL)
sp_addmessage (Transact-SQL)
sp_altermessage (Transact-SQL)
FORMATMESSAGE (Transact-SQL)
sys.messages (Transact-SQL)
Procédures stockées système (Transact-SQL)

Autres ressources

Utilisation de RAISERROR

Aide et Informations

Assistance sur SQL Server 2005