sp_dropmessage(Transact-SQL)

SQL Server 데이터베이스 엔진 인스턴스에서 지정한 사용자 정의 오류 메시지를 삭제합니다. 사용자 정의 메시지는 sys.messages 카탈로그 뷰를 사용하여 볼 수 있습니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

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

인수

  • [ @msgnum = ] message_number
    삭제할 메시지 번호입니다. message_number는 메시지 번호가 50,000보다 큰 사용자 정의 메시지여야 합니다. message_number는 int이며 기본값은 NULL입니다.

  • [ @lang = ] 'language'
    삭제할 메시지의 언어입니다. all을 지정하면 message_number의 모든 언어 버전이 삭제됩니다. language는 sysname이며 기본값은 NULL입니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

없음

사용 권한

sysadminserveradmin 고정 서버 역할의 멤버 자격이 필요합니다.

주의

language에 all을 지정하지 않으면 이 메시지의 모든 해당 언어 버전을 삭제해야 미국의 영어 버전을 삭제할 수 있습니다.

1.사용자 정의 메시지 삭제

다음 예에서는 sys.messages에서 메시지 번호가 50001인 사용자 정의 메시지를 삭제합니다.

USE master;
GO
EXEC sp_dropmessage 50001;

2.다른 언어 버전을 포함하는 사용자 정의 메시지 삭제

다음 예에서는 메시지의 해당 언어 버전을 포함한 메시지 번호가 60000인 사용자 정의 메시지를 삭제합니다.

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

3.사용자 정의 메시지의 다른 언어 버전 삭제

다음 예에서는 전체 메시지를 삭제하지 않고 메시지 번호가 60000인 사용자 정의 메시지의 다른 언어 버전을 삭제합니다.

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

참고 항목

참조

RAISERROR(Transact-SQL)

sp_addmessage(Transact-SQL)

sp_altermessage (Transact-SQL)

FORMATMESSAGE(Transact-SQL)

sys.messages(Transact-SQL)

시스템 저장 프로시저(Transact-SQL)