Postgresql 9.3.25 문서 | ||||
---|---|---|---|---|
이전 | Postgre메이저 토토 사이트 : 문서 : 9.3 : PL/PG메이저 토토 사이트 -메이저 토토 사이트 절차 언어 | 40 장pl/pgsql - SQL절차 언어 | 다음 |
사용Rain보고서 메시지와 젠 토토를 높이십시오.
높이 [ 레벨 ] '형식' [, 표현[, ... ]] [사용옵션=표현[, ... ]]; 들어올리다 [ 레벨 ]조건 _name[사용옵션=표현[, ... ]]; 들어올리다 [ 레벨 ] sqlstate 'sqlstate' [사용옵션=표현[, ... ]]; 들어올리다 [ 레벨 ] 사용옵션=표현[, ... ]; 들어올리다 ;
the레벨옵션을 지정합니다 오류 심각도. 허용 레벨은디버그, log, 정보, 통지, 경고, 그리고예외, with예외기본값이됩니다.예외젠 토토가 발생합니다 (일반적으로 중단합니다 현재 거래); 다른 수준은 메시지 만 생성합니다 다른 우선 순위 수준. 특정 메시지 여부 우선 순위는 클라이언트에게보고되거나 서버 로그에 기록되거나 둘 다에 의해 제어됩니다.log_min_messagesandclient_min_messages구성 변수. 보다범퍼카 토토 : 문서 : 9.3 : 서버 구성자세한 내용은
이후레벨있으면 가능합니다 a 쓰기형식(a 표현이 아닌 간단한 문자열 문자). 형식 문자열 보고 할 오류 메시지 텍스트를 지정합니다. 형식 문자열 삽입 할 선택적 인기 표현식이 이어질 수 있습니다. 메시지로. 형식 문자열 내부,%는 문자열 표현으로 대체됩니다 다음 선택적 인수의 가치. 쓰다%%문자를 방출하려면%.
이 예에서V_JOB_ID교체%문자열에서 :
통지 통지 'CS_CREATE_JOB (%) 호출', V_JOB_ID;
오류 보고서에 추가 정보를 첨부 할 수 있습니다. 글쓰기사용그 뒤에옵션=표현항목. 각표현모든 문자열 값일 수 있습니다 표현. 허용옵션키 단어는 다음과 같습니다.
오류 메시지 텍스트를 설정합니다. 이 옵션에서는 사용할 수 없습니다 형태Rain형식이 포함되어 있습니다 이전 문자열사용.
오류 세부 메시지를 제공합니다.
힌트 메시지를 제공합니다.
보고 할 오류 코드 (sqlstate)를 지정합니다 조건 이름부록 A또는 직접 5 자 Sqlstate 코드.
관련 객체의 이름을 공급합니다.
이 예제는 주어진 오류로 트랜잭션을 중단합니다. 메시지와 힌트 :
예외를 제외하고 '존재하지 않는 ID- %', user_id hint = '사용자 ID를 확인하십시오';
이 두 예제는 동등한 설정 방법을 보여줍니다 sqlstate :
RISE 'Duplice User ID : %', ervercode를 사용하여 user_id = '고유 _violation'; 'Duplicer ID : %', Errcode = '23505';를 사용하여 'Duplicer ID : %', user_id를 올립니다.
두 번째가 있습니다Rain구문 주요 인수는보고 할 조건 이름 또는 sqlstate입니다. 예를 들어:
Division_by_Zero Raise; SQLSTATE '22012';를 높이십시오.
이 구문에서사용익숙해 질 수 있습니다 사용자 정의 오류 메시지, 세부 사항 또는 힌트를 제공하십시오. 또 다른 방법 이전 예는입니다.
Message = 'Duplicate User ID :'|| user_id;
여전히 또 다른 변형은 쓰는 것입니다상승 사용또는Rain레벨사용그리고 다른 모든 것을 넣습니다 그만큼사용목록.
마지막 변형Rain전혀 매개 변수. 이 양식은 A 내에서만 사용할 수 있습니다.시작블록예외절; 현재 처리중인 젠 토토가 발생합니다 재투자.
참고 :전PostgreSQL 9.1, Rain매개 변수가 없었다 포함 된 블록에서 오류를 다시 제외하는 것으로 해석됩니다. 활성 예외 처리기. 따라서예외해당 핸들러 안에 중첩 된 조항 더라도 잡지 마십시오.Rain중첩예외조항 블록. 이것 Oracle 's와 호환되지 않는 놀라운 것으로 여겨졌다. pl/sql.
조건 이름이나 sqlstate가 a에 지정되지 않은 경우예외 제기명령, 기본값은 사용하는 것입니다rase_exception(P0001). 메시지 텍스트가 지정되지 않으면 기본값이 있습니다 조건 이름 또는 sqlstate를 메시지 텍스트로 사용하는 것입니다.
참고 :SQLSTATE 코드별로 오류 코드를 지정할 때 귀하 사전 정의 된 오류 코드에만 국한되지 않지만 5 자리 및/또는 상단 사례 ASCII로 구성된 오류 코드 이외의 편지00000. 그것은 3 개로 끝나는 젠 토토 코드를 던지지 않는 것이 좋습니다. 0은 카테고리 코드이며 전체 카테고리를 포획합니다.