41.9.사설 토토 사이트 및 메시지#

41.9.1.오류 및 메시지보고#

사용Rain메시지를보고하고 사설 토토 사이트를 제기하려는 진술.

높이 [ 레벨 ] '형식' [,표현[, ... ]] [사용옵션=표현[, ... ]]; 레벨 ]조건 _name[사용옵션=표현[, ... ]]; 12526_12533 ] sqlstate 'sqlstate' [사용옵션=표현[, ... ]]; 레벨 ] 사용옵션=표현[, ... ];

the레벨옵션 오류 심각도를 지정합니다. 허용 레벨은디버그,log,info,통지,경고예외, with예외기본값이됩니다.예외오류가 발생합니다 (일반적으로 현재 트랜잭션을 중단). 다른 수준은 우선 순위가 다른 메시지 만 생성합니다.log_min_messagesandclient_min_messages구성 변수. 보다윈 토토 : 문서 : 17 : 19 장 서버 구성자세한 내용은

이후레벨있으면 A를 지정할 수 있습니다.형식String (표현이 아닌 간단한 문자열 문자이어야 함). 형식 문자열은보고 할 오류 메시지 텍스트를 지정합니다.%는 다음 선택적 인수의 값의 문자열 표현으로 대체됩니다. 쓰다%%문자를 방출하려면%. 인수 수는 수와 일치해야합니다.%형식 문자열의 자리 표시 자나 함수를 편집하는 동안 오류가 발생합니다.

이 예에서V_JOB_ID대체%문자열에서 :

통지 통지 'CS_CREATE_JOB (%) 호출', V_JOB_ID;

서면으로 사설 토토 사이트 보고서에 추가 정보를 첨부 할 수 있습니다사용그 뒤에옵션=표현항목. 각표현는 모든 문자열 값 표현식 일 수 있습니다. 허용옵션키워드는 다음과 같습니다.

메시지 #

오류 메시지 텍스트를 설정합니다. 이 옵션은 형식으로 사용할 수 없습니다.Rain이전에 형식 문자열을 포함하는사용.

세부 사항 #

사설 토토 사이트 세부 정보를 제공합니다.

힌트 #

힌트 메시지를 제공합니다.

errcode #

repord에 표시된대로 조건 이름별로보고 할 오류 코드 (sqlstate)를 지정합니다.PostgreSQL : 문서 : 17 : 부록 A. PostgreSQL 토토 꽁 머니 코드


제약
Datatype
테이블
스키마 #

관련 객체의 이름을 제공합니다.

이 예제는 주어진 오류 메시지와 힌트로 트랜잭션을 중단합니다 :

예외를 높이기 'nonevistent id- %', user_id

이 두 예제는 sqlstate를 설정하는 동등한 방법을 보여줍니다 :

'Duplice User ID : %', erus_id를 사용하여 Errcode = '고유 한 _violation';

두 번째가 있습니다Rain기본 인수가보고 할 조건 이름 또는 sqlstate 인 구문.

Division_by_Zero Raise;

이 구문에서사용사용자 정의 오류 메시지, 세부 사항 또는 힌트를 제공하는 데 사용할 수 있습니다. 이전 예제를 수행하는 또 다른 방법은입니다.

Message = 'Duplicate User ID :'|| user_id;

여전히 또 다른 변형은 쓰는 것입니다사용또는Rain레벨사용그리고 다른 모든 것을에 넣으십시오.사용목록.

마지막 변형Rain매개 변수가 전혀 없습니다. 이 양식은 A 내에서만 사용할 수 있습니다.시작블록예외절; 현재 처리중인 오류가 다시 열렸습니다.

note

PostgreSQL 9.1, Rain매개 변수가없는 것은 활성 예외 핸들러를 포함하는 블록에서 오류를 다시 제외하는 것으로 해석되었습니다. 따라서예외해당 핸들러 안에 중첩 된 조항은이더라도 그것을 잡을 수 없었습니다.Rain중첩 내에 있었다예외절의 블록. 이것은 Oracle의 PL/SQL과 양립 할 수없는 놀라운 것으로 간주되었습니다.

조건 이름이나 sqlstate가 a에 지정되지 않은 경우예외 제기명령, 기본값은 사용하는 것입니다Raise_Exception(P0001). 메시지 텍스트가 지정되지 않은 경우 기본값은 조건 이름 또는 sqlstate를 메시지 텍스트로 사용하는 것입니다.

Note

SQLSTATE 코드별로 오류 코드를 지정할 때 사전 정의 된 오류 코드에만 국한되지 않지만 5 자리 및/또는 상단 사례 ASCII 문자로 구성된 오류 코드를 선택할 수 있습니다.00000. 카테고리 코드이며 전체 카테고리를 포획 하여만 갇힐 수 있기 때문에 3 개의 0으로 끝나는 사설 토토 사이트 코드를 던지는 것을 피하는 것이 좋습니다..

41.9.2.어설 션 확인#

theAssert명령문은 디버깅 체크를 삽입하기위한 편리한 속기입니다pl/pgsql기능.

Assert조건[,메시지 ];

the조건항상 진실로 평가할 것으로 예상되는 부울 표현입니다. 그렇다면Assert성명서는 더 이상 아무것도하지 않습니다. 결과가 False 또는 Null이면assert_failure예외가 제기됩니다. (평가 중에 오류가 발생하는 경우조건, 정상 사설 토토 사이트로보고됩니다.)

선택 사항 인 경우메시지제공됩니다. 결과 (null이 아닌 경우)의 결과 (기본 오류 메시지 텍스트를 대체하는) 표현식입니다.주장 실패,조건실패. 그만큼메시지어설 션이 성공하는 정상적인 경우에는 표현이 평가되지 않습니다.

구성 매개 변수를 통해 어설 션 테스트를 활성화 또는 비활성화 할 수 있습니다plpgsql.check_asserts, 부울 가치를 취합니다. 기본값은on. 이 매개 변수 인 경우OFFtheAssert진술은 아무것도하지 않습니다.

참고Assert는 일반 오류 조건을보고하는 것이 아니라 프로그램 버그를 감지하기위한 것입니다. 사용높이위에서 설명한 진술.

정정 제출

문서에 맞지 않는 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면