View a markdown version of this page

Amazon RDS for SQL Server에 대한 사용자 지정 오류 메시지 생성 - Amazon Relational Database Service

Amazon RDS for SQL Server에 대한 사용자 지정 오류 메시지 생성

애플리케이션은 RAISERROR를 사용하여 오류 메시지를 발생시킬 수 있도록 sys.messages에 자체 오류 메시지를 정의하는 경우가 많습니다. Amazon RDS DB 인스턴스에서 sys.messages에 사용자 지정 메시지를 추가하려면 rds_create_custom_message 저장 프로시저를 사용합니다. 프로시저는 해당 파라미터를 sp_addmessage에 전달합니다.

rds_create_custom_message 프로시저에는 다음과 같은 파라미터가 있습니다.

파라미터 이름 데이터 형식 기본값 필수 설명

@msgnum

int

NULL

필수

메시지의 ID입니다. 이 값은 50001~2147483647여야 합니다.

@severity

smallint

NULL

필수

메시지의 심각도 수준입니다. 이 값은 1~25이어야 합니다.

@msgtext

nvarchar(255)

NULL

필수

메시지의 텍스트. 값을 비워둘 수 없습니다.

@lang

SYSNAME

NULL

선택 사항

메시지의 언어입니다. 기본값은 세션의 기본 언어입니다.

@with_log

varchar(5)

NULL

선택 사항

메시지가 발생할 때 해당 메시지를 Windows 애플리케이션 로그에 기록할지 여부를 지정합니다.

@replace

varchar(7)

NULL

선택 사항

ID와 언어가 동일한 기존 메시지를 덮어쓰려면 REPLACE를 지정합니다.

이러한 파라미터는 sp_addmessage의 파라미터와 동일한 의미를 갖습니다. 자세한 내용은 Microsoft Learn 웹 사이트의 sp_addmessage를 참조하세요.

다음 예제에서는 sys.messages에 메시지를 추가하고, 해당 메시지가 발생할 때 Windows 애플리케이션 로그에 로깅합니다. 예제에서 @msgnum 값 50002, @severity 값 16 및 @msgtext 값을 실제 메시지 ID, 심각도 및 텍스트로 각각 바꾸세요.

EXEC msdb.dbo.rds_create_custom_message @msgnum = 50002, @severity = 16, @msgtext = N'The order could not be processed.', @lang = 'us_english', @with_log = 'TRUE';

다음 예제에서는 기존 메시지의 텍스트를 대체합니다. 예제에서 @msgnum 값 50002, @severity 값 16 및 @msgtext 값을 실제 메시지 ID, 심각도 및 텍스트로 각각 바꾸세요.

EXEC msdb.dbo.rds_create_custom_message @msgnum = 50002, @severity = 16, @msgtext = N'The order could not be processed. Contact support.', @lang = 'us_english', @with_log = 'TRUE', @replace = 'REPLACE';

메시지가 추가되었는지 확인하려면 sys.messages를 쿼리합니다. 예제에서 message_id 값 50002를 실제 메시지 ID로 바꾸세요.

SELECT * FROM sys.messages WHERE message_id = 50002;