sp_altermessage (Transact-SQL)
SQL Server 데이터베이스 엔진의 인스턴스에서 사용자 정의 메시지의 상태를 변경합니다. 사용자 정의 메시지는 sys.messages 카탈로그 뷰를 사용하여 볼 수 있습니다.
중요: |
---|
이 기능은 이전 버전의 SQL Server로부터 변경되었습니다. 자세한 내용은 SQL Server 2005 데이터베이스 엔진 기능의 동작 변경을 참조하십시오. |
구문
sp_altermessage [ @message_id = ] message_number , [ @parameter = ] 'write_to_log'
, [ @parameter_value = ] 'value'
인수
- [****@message_id =** ] message_number
sys.messages에서 변경할 메시지의 오류 번호입니다. message_number는 int이며 기본값은 없습니다.
[ @parameter = ] **'**write_to_log'
@parameter_value와 함께 사용되어 Microsoft Windows 응용 프로그램 로그에 메시지가 기록될 것임을 나타냅니다. write_to_log는 sysname이며 기본값은 없습니다. write_to_log는 WITH_LOG 또는 NULL로 설정해야 합니다. write_to_log를 WITH_LOG 또는 NULL로 설정하고 @parameter_value 값이 true이면 Windows 응용 프로그램 로그에 메시지가 기록됩니다. write_to_log를 WITH_LOG 또는 NULL로 설정하고 @parameter_value 값이 false인 경우에는 메시지가 항상 Windows 응용 프로그램 로그에 기록되지는 않지만 오류 발생 방식에 따라 기록될 수도 있습니다. write_to_log를 지정하면 @parameter_value에도 값을 지정해야 합니다.[!참고] Windows 응용 프로그램 로그에 메시지가 기록된 경우에는 데이터베이스 엔진 오류 로그 파일에도 기록됩니다.
- [ @parameter_value = ]****'**value'
@parameter와 함께 사용되어 Microsoft Windows 응용 프로그램 로그에 오류가 기록될 것임을 나타냅니다. value는 **varchar(5)**이며 기본값은 없습니다. true인 경우 오류가 항상 Windows 응용 프로그램 로그에 기록됩니다. false인 경우에는 오류가 항상 Windows 응용 프로그램 로그에 기록되지는 않지만 오류 발생 방식에 따라 기록될 수도 있습니다. value를 지정하면 @parameter에 대한 write_to_log도 지정해야 합니다.
반환 코드 값
0(성공) 또는 1(실패)
결과 집합
없음
주의
sp_altermessage가 기존 메시지의 로깅 동작을 변경한다는 점을 제외하고는 WITH_LOG 옵션이 있는 sp_altermessage의 효과는 RAISERROR WITH LOG 매개 변수의 효과와 유사합니다. 메시지가 WITH_LOG로 변경된 경우 사용자가 오류를 발생시킨 방법과 상관 없이 항상 Windows 응용 프로그램 로그에 기록됩니다. RAISERROR가 WITH_LOG 옵션 없이 실행된 경우에도 Windows 응용 프로그램 로그에 오류가 기록됩니다.
sp_altermessage를 사용하여 시스템 메시지를 수정할 수 없습니다.
사용 권한
serveradmin 고정 서버 역할의 멤버 자격이 필요합니다.
예
다음 예에서는 기존 메시지 55001
을 Windows 응용 프로그램 로그에 기록합니다.
sp_altermessage 55001, 'WITH_LOG', 'true';
GO
참고 항목
참조
RAISERROR(Transact-SQL)
sp_addmessage(Transact-SQL)
sp_dropmessage(Transact-SQL)
시스템 저장 프로시저(Transact-SQL)