sp_dropmessage (Transact-SQL)
Elimina un messaggio di errore definito dall'utente specificato da un'istanza di Motore di database di SQL Server. Per visualizzare i messaggi definiti dall'utente, è possibile utilizzare la vista del catalogo sys.messages.
Convenzioni della sintassi Transact-SQL
Sintassi
sp_dropmessage [ @msgnum = ] message_number
[ , [ @lang = ] 'language' ]
Argomenti
- [ @msgnum = ] message_number
Numero del messaggio da eliminare. message_number deve essere un messaggio definito dall'utente con numero maggiore di 50000. message_number è di tipo int e il valore predefinito è NULL.
- [ @lang = ] 'language'
Lingua del messaggio da eliminare. Se si specifica all, vengono eliminate le versioni di message_number in tutte le lingue. language è di tipo sysname e il valore predefinito è NULL.
Set di risultati
Nessuno.
Osservazioni
A meno che non si specifichi all per l'argomento language, è necessario eliminare tutte le versioni localizzate di un messaggio prima di poter eliminare la versione inglese (USA).
Autorizzazioni
È richiesta l'appartenenza ai ruoli predefiniti del server sysadmin e serveradmin.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Esempi
A. Eliminazione di un messaggio definito dall'utente
Nell'esempio seguente viene eliminato un messaggio definito dall'utente, con numero 50001
, da sys.messages.
USE master;
GO
EXEC sp_dropmessage 50001;
B. Eliminazione di un messaggio definito dall'utente che include una versione localizzata
Nell'esempio seguente viene eliminato un messaggio definito dall'utente, con numero 60000
, in cui è inclusa una versione localizzata del messaggio.
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. Eliminazione di una versione localizzata di un messaggio definito dall'utente
Nell'esempio seguente viene eliminata una versione localizzata di un messaggio definito dall'utente, con numero 60000
, senza eliminare l'intero messaggio.
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
Vedere anche
Riferimento
RAISERROR (Transact-SQL)
sp_addmessage (Transact-SQL)
sp_altermessage (Transact-SQL)
FORMATMESSAGE (Transact-SQL)
sys.messages (Transact-SQL)
Stored procedure di sistema (Transact-SQL)