>>이경록 님께서 쓰시길<<
::
:: >>whatisid 님께서 쓰시길<<
::
:: ::
:: :: 안녕하세요.
:: ::
:: :: CREATE PROCEDURE testproc (arg1 IN varchar2) IS
:: :: BEGIN
:: :: DBMS_OUTPUT.ENABLE;
:: :: DBMS_OUTPUT.PUT_LINE('Completed!');
:: :: END;
:: ::
:: :: 처럼 하고
:: ::
:: :: execute testproc('hi')
:: ::
:: :: 라고 하면
:: ::
:: :: Completed! 가 출력되어야 하는게 아닌가요?
:: ::
:: :: DBMS_OUTPUT.PUT_LINE 에 어떤 값을 주더라도
:: :: PL/SQL procedure successfully completed.
:: :: 위 구문만이 덩그라니 나옵니다.
:: ::
:: :: 답변 부탁드려요.
:: ::
::
:: sql*plus에서 하신 다면 set serveroutput on 을 하시면 됩니다. 다만 결과가 두번 반복해서 출력되네
:: 요.
경록님 말씀대로 sqlplus 에서는 set serveroutout on 을 해주셔야만 DBMS_OUTPUT 을 볼수 있습니다.
기본 설정이 아마 off 일껍니다.
그리고 위에 코드 부분은 프로시저를 만드는 구문입니다.
그러니까 서버에서 프로시저 잘 만들어 졌다고
PL/SQL procedure successfully completed.
이런 문구를 주는 것입니다.
저 프로시저를 실행시키시면
DBMS_OUTPUT.PUT_LINE('Completed!');
여기에 입력한 값이 나올껍니다.
근데 경록님 말씀처럼 두분 출력되진 않거군요 한번으로 잘 나오던데요...
처음 질문하신분 코드를 잘 보시면 프로시저 안에 output 문이 있으니까 프로시저가 실행될때 그부분이 파싱되겠죠...
글구 참고로 .. 메세지를 한글로 보길 원한다면
환경변수중 ...
NSL_LANG=KOREAN_KOREA.KO16KSC5601
이렇게 편집하시면 됩니다.
초보의 의견이었습니다.
즐셀 되세염 ^^
|