THROW 문은 사용자 예외를 생성합니다.
SEVERITY는 예외와 연관된 심각도를 판별하는 선택적 절입니다. 이 절에는 널(null)이 아닌 정수 값을 리턴하는 표현식이 포함될 수 있습니다. 절을 생략할 경우, 기본값은 1입니다.
ATALOG는 선택적 절이며, 선택적 절을 생략할 경우 디폴트 값은 WebSphere Message Broker 현재 버전 카탈로그입니다. 현재 WebSphere Message Broker 버전의 메시지 카탈로그를 명시적으로 사용하려면 모든 운영 체제에서 BIPV600을 사용하십시오.
MESSAGE는 선택적 절입니다. 이 절을 생략하면, 디폴트로 WebSphere Message Broker 카탈로그에서 THROW문의 사용을 위해 제공된 메시지 블록의 첫 번째 메시지 번호가 사용됩니다(2951). THROW 문에 메시지 번호를 입력할 경우, 2951 - 2999를 메시지 번호로 사용할 수 있습니다. 또는 사용자 정의 확장에서 이벤트 로그 기록 사용의 지시사항에 따라 사용자 고유의 카탈로그를 생성할 수 있습니다.
선택 VALUES 필드를 사용하여 메시지에 데이터를 삽입하십시오. 정보 조각을 얼마든지 삽입할 수 있지만 제공된 메시지(2951 - 2999)가 8개의 삽입만을 수용할 수 있습니다.
THROW USER EXCEPTION;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE 2951 VALUES(1,2,3,4,5,6,7,8) ;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE 2951 VALUES('The SQL State: ',
SQLSTATE, 'The SQL Code: ', SQLCODE, 'The SQLNATIVEERROR: ', SQLNATIVEERROR,
'The SQL Error Text: ', SQLERRORTEXT ) ;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE 2951 ;
THROW USER EXCEPTION CATALOG 'MyCatalog' MESSAGE 2951 VALUES('Hello World') ;
THROW USER EXCEPTION MESSAGE 2951 VALUES('Insert text 1', 'Insert text 2') ;
예외를 전달하는 방법에 대한 자세한 정보와 SQLSTATE, SQLCODE, SQLNATIVEERROR 및 SQLERRORTEXT에 대한 자세한 내용은 ESQL 데이터베이스 상태 함수를 참조하십시오.