본문 바로가기
Application/Windows

Toad로 Oracle Procedure 실행 후 Out Cursor(REF Cursor) 출력하기

by o테리o 2010. 3. 23.

먼저 Toad로 Oracle Procedure Debugging 를 하는 방법을 모르시는분은

[Toad] Toad 로 Oracle procedure Debugging하기

를 먼저 읽어주시기 바랍니다.

 

그럼 시작하겠습니다.

Oracle Procedue 를 작성하다보면 OUT Parameter로 ref cursor를 반환하는 경우가 많다.

(다른 분들은 어떠할지 모르겠지만 제가 개발하는 곳에서는 매우 많았습니다.)

보통 최종 결과 값을 조회해서 반환했는데..

이 결과 값을 확인해 볼려면 어플리케이션단 까지 올라가야됐다..(디비자체에서는 확인할 길이..ㅠ.ㅠ)

그러다 찾은게 Toad에서 REF Cursor를 출력해주는 부분을 찾았다.

그럼 확인해 보자.

 

1. 먼저 간단한 프로시져를 만들어 보자.

- 다른건 없고 Types.DataSet 이 ref cursor 이다.(Package로 만듬)

TYPES Package는 다음과 같다.

 

2. 그럼 이제 디버깅을 해보자.

- 디버깅 할 때 다음과 같은 창을 띄우게 된다.

- 이때 상단의 빨간 박스로 표시되어있는 버튼을 클릭한다.

 

3. 다음과 같은 설정 창이 출력된다.

- 보통 이렇게 "Do not output results" 만 체크 되어있을것이다.

- 이것을 다음과 같이 바꾸도록 한다.

- "Print OUT arguments/RETURN values to DBMS Output", "Load into grid from memory(strong and weak)" 이 두가를 선택한다. 그리고 OK

 

4. 다시 OK를 누른다.

 

6. 프로시져 디버깅을 최종 완료하면 다음과 같이 cursor 에 담긴 데이터가 출력된다.

- 화면 하단 REF CURSOR Results 에 데이터가 출력되는게 보이는가?? 그럼 성공한거다.

- 혹시 REF Cursor Results 창이 안보이는 사람은 다음을 확인해보길 바란다.

- 하단 창에서 마우스 오른쪽을 누른후 "Desktop Panels"에서 "REF CURSOR Results " 가 체크 되어있는지 확인해 보자.

 

그럼 모두들 잘 되기를..^^