>  기사  >  데이터 베이스  >  Oracle에서 프로세스 예외 정보를 얻는 방법

Oracle에서 프로세스 예외 정보를 얻는 방법

WBOY
WBOY원래의
2022-06-10 10:15:373217검색

Oracle에서는 "put_line" 인쇄 방법과 함께 "DBMS_OUTPUT"을 사용하여 저장 프로시저 예외 정보를 얻을 수 있습니다. 구문은 "DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);"입니다. 줄 바꿈 출력에 사용되며, sqlcode는 예외 번호를 나타내고, sqlerrm은 예외에 대한 자세한 정보를 나타내며, substr() 메서드와 함께 사용하여 예외 정보를 가로챌 수 있습니다.

Oracle에서 프로세스 예외 정보를 얻는 방법

이 튜토리얼의 운영 환경: Windows 10 시스템, Oracle 버전 12c, Dell G3 컴퓨터.

oracle에서 프로세스 예외 정보를 얻는 방법

oracle 저장 프로시저에서 예외 정보 표시

이전에 저장 프로시저를 작성할 때 예외 처리 작성 방법은 다음과 같습니다.

Oracle에서 프로세스 예외 정보를 얻는 방법

이런 방법으로 저장 프로시저를 작성할 때 예외가 발생하면 어떤 종류의 예외가 발생했는지 알 수 없습니다(예: 열 너비가 충분하지 않아 데이터를 삽입할 때 예외가 발생함). 예외 정보는 다음과 같이 표시될 수 있습니다

EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('sqlcode : ' ||sqlcode);
DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);
ROLLBACK;
END ...

sqlcode는 예외 번호, sqlerrm은 예외의 세부 정보이며, 예외 정보가 너무 많으면 처음 100자를 가로채서 표시하는

DBMS_OUTPUT.put_line('sqlerrm : ' ||substr(sqlerrm,1,100));

와 같이 표시 부분을 가로챌 수 있습니다.

추천 튜토리얼: "Oracle Video Tutorial"

위 내용은 Oracle에서 프로세스 예외 정보를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.