Oracle에서는 "put_line" 인쇄 방법과 함께 "DBMS_OUTPUT"을 사용하여 저장 프로시저 예외 정보를 얻을 수 있습니다. 구문은 "DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);"입니다. 줄 바꿈 출력에 사용되며, sqlcode는 예외 번호를 나타내고, sqlerrm은 예외에 대한 자세한 정보를 나타내며, substr() 메서드와 함께 사용하여 예외 정보를 가로챌 수 있습니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, Oracle 버전 12c, Dell G3 컴퓨터.
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!