sp_dropmessage (Transact-SQL)
Descarta uma mensagem de erro definida pelo usuário especificada de uma instância do Mecanismo de Banco de Dados do SQL Server. As mensagens definidas pelo usuário podem ser exibidas usando a exibição de catálogo sys.messages.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_dropmessage [ @msgnum = ] message_number
[ , [ @lang = ] 'language' ]
Argumentos
[ @msgnum = ] message_number
É o número da mensagem a ser descartada. message_number deve ser uma mensagem definida pelo usuário que tenha um número maior que 50000. message_number é int, com o padrão de NULL.[ @lang = ] 'language'
É o idioma da mensagem a ser descartada. Se all for especificado, serão descartadas todas as versões de idioma de message_number. language é sysname, com o padrão de NULL.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Conjuntos de resultados
Nenhum.
Permissões
Requer associação às funções de servidor fixas sysadmin e serveradmin.
Comentários
A menos que all seja especificado para language, todas as versões localizadas de uma mensagem devem ser descartadas antes de descartar a versão em inglês dos EUA.
Exemplos
A.Descartando uma mensagem definida pelo usuário
O exemplo a seguir descarta uma mensagem definida pelo usuário, número 50001, de sys.messages.
USE master;
GO
EXEC sp_dropmessage 50001;
B.Descartando uma mensagem definida pelo usuário que inclui uma versão localizada
O exemplo a seguir descarta uma mensagem definida pelo usuário, número 60000, que inclui uma versão localizada da mensagem.
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.Descartando uma versão localizada de uma mensagem definida pelo usuário
O exemplo a seguir descarta uma versão localizada de uma mensagem definida pelo usuário, número 60000, sem descartar a mensagem inteira.
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