[Oracle] SET SERVEROUTPUT ON 명령어로 DBMS_OUTPUT 패키지 출력하기

SET SERVEROUTPUT ON, SET SERVEROUTPUT OFF

SET SERVEROUTPUT ON; 명령어는 DBMS_OUTPUT 패키지로 메시지를 보내도록 하였으나 출력이 되지 않을 때 사용할 수 있습니다.

show serveroutput

SERVEROUTPUT은 기본값이 OFF이기에 출력이 안 될 수도 있는 것이지요.

SQL> show serveroutput
serveroutput OFF

SET SERVEROUTPUT OFF

SET SERVEROUTPUT OFF

SERVEROUTPUT 상태가 OFF여서 출력이 되지 않는 모습입니다.

PL/SQL procedure successfully completed.
DECLARE
   NAME   EMP.ENAME%TYPE;
BEGIN
   SELECT ENAME
     INTO NAME
     FROM EMP
    WHERE EMPNO = '0000';

   DBMS_OUTPUT.PUT_LINE (NAME);
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.PUT_LINE (SQLERRM);
END;

SET SERVEROUTPUT ON

SET SERVEROUTPUT ON

SERVEROUTPUT 상태를 ON 으로 변경 처리하여 예외사항을 출력하는 모습입니다.

ORA-01403: 데이터를 찾을 수 없습니다.
PL/SQL procedure successfully completed.
SET SERVEROUTPUT ON;
DECLARE
   NAME   EMP.ENAME%TYPE;
BEGIN
   SELECT ENAME
     INTO NAME
     FROM EMP
    WHERE EMPNO = '0000';

   DBMS_OUTPUT.PUT_LINE (NAME);
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.PUT_LINE (SQLERRM);
END;

댓글