plsql 로 배치를 만드는대 DBMS_OUTPUT로 로그를 찍어보는데
이걸 화일로 만들수(찍을수)는 없나요.. 로그화일 같이...
ORA-20000: ORU-10027: buffer overflow, limit of 20000 bytes ORA-06512: "SYS.DBMS_OUTPUT",
이렇게 자꾸 overflow 에러가 나서....^^
아님 다른 방법이 있으면 알려주십시요..
임시디비로 만든다든지..
즐거운 설 보내십시요......
Buffer size를 늘려 주시면 됩니다.
PLSQL script內 아래문구를 넣어주세요..~!~!
DBMS_OUTPUT.Enable(1000000);
DBMS_OUTPUT의 한계는 버퍼 사이즈를 늘려서 로그를 찍어볼 수는 있지만, 항상 실행이 끝난 다음에야 결과를 확인해 볼 수 있다는 거져..
중간 중간 확인해 보고 틀렸다 싶으면 얼렁 실행을 끊고 다시 고치고 돌려보아야 하는 배치 프로그램인데, 끊날 때 까지 기다려야 한다면 환장할 일이겠져..
만약 Toad나 PL/SQL Developer 같은 툴을 이용한다면 debugging기능을 이용해서 Line별로 값을 확인해 볼 수 있습니다.
그리고, Oracle 8i 이상을 사용한다면, UTL_FILE 패키지를 이용해서 서버 파일시스템에다가 파일로 기록할 수 있습니다.
여기 Q&A 글 들에서도 검색할 수 있고, 오라클 매뉴얼 중 Supplied PL_SQL Packages and Types Reference 에서 UTL_FILE을 참조하십시오.