상세 컨텐츠

본문 제목

Toad 에서 Oracle 프로시저 디버깅

Tools/Toad

by 탑~! 2012. 5. 21. 14:03

본문

Oracle Version : 10.2.0.4
OS : Win Xp Profession SP3
Toad : 9.6

토드에서 오라클 프로시져의 디버깅이 가능하다.

그 방법을 지금부터 알아보도록 하자.

먼저 디버깅할 사용자에게 필요한 권한이 있다.(System privilige)



지금부터는 오라클 기본 사용자인 scott 계정을 이용하여 진행하도록 하겠다.

프로시져를 하나 생성해 보도록 하겠다.

상단 메뉴중 "Create new PL/SQL object" 메뉴를 클릭한다.



PL/SQL Object Create Object options에서 Object Type은 Procedure를 선택하고 New Object Name에는 ToadDebugProcedure라고 입력하도록 하겠다.



OK를 누르면 다음과같은 스크립트가 생성될것이다. (정확히 일치하지 않아도 문제 없음) 화면과 일치하지 않은 사용자는 템플릿을 손댔거나 버젼이 다를수 있으니 걱정 안해도 된다.



일단 필요없는 부분을 다 지우고 다시 보도록 하자.
한결 보기 편해졌는가??


그러면 이제 프로시져를 만들어 보도록 하자..
만들 프로시져는
두개의 값을 받아(number) 한번은 더하고, 한번은 곱하고 끝내는 간단한 프로시져를 만들어 보도록 하자..
간단히 스크립트를 만들어보면 다음과 같을것이다..
하지만 이 스크립트는 반드시 직접 타이핑 해서 만들어 볼것을 권장한다.
백문이 불여일견이다..
백번 보는것보단 한번 타이핑 해보는것이 더 몸에 와 닿을테니..



스크립트가 완성 되었다면 프로시져를 만든다.(F5)

오류없이 만들어 졌는가??

그럼 본격적으로 프로시져 디버깅을 해보도록 하자.
하단 이미지중 Step Over 버튼을 누르면 한줄씩 한줄씩 실행을 합니다.
그 버튼을 기준으로
왼쪽으로 두번째 : 한번 실행
왼쪽으로 첫번재 : 파라미터 설정
오른쪽으로 첫번째 : 한줄씩 실행하지만 더 들어갈수 있을경우 따라 들어감(??)
오른쪽으로 두번째 : 한단계 밖으로 나감(??)
설명이 조금 모호하지만 직접 디버깅 해보면서 미묘한 차이점을 이해하기 바란다.
Step Over 버튼을 누른다.




Setop Over 버튼을 누를시 다음과같은 두가지 팝업이 나올수 있다.
첫번째 팝업은 처음 한번만 뜰 것이고 두번째 팝업은 매 디버깅 마다 뜰것이다.
정확한 내용은 잘 모르겠다.^^
대충 보면 디버깅 관련 정보를 넣어서 컴파일 하겠는냐 뭐 그런건데...
그냥 뭍지마 Yes 해보자.(아시는분 댓글 달아주시면 감사하겠습니다.)



파라미터 설정 화면이다.
스크립트에서 두개의 변수를 받는걸로 되어있으므로 두개가 나오게 된다.
적당한 값을 입력한다.




아래와 같이 Edit 창 왼쪽 상단에 검정 화살표가 나오는가??
그러면 디버깅이 성공됐다는 뜻이다. 축하한다.
그러면 Step over를 클릭해 한줄식 디버깅 해보자.



변수에 할당된 값을 확인하는 방법은 변수 위에 마우스를 올려놓으면 된다.
(이건 화면이 캡쳐가 안되서 그림이 없다..)

마우스를 올려 보는법 말고 다른방법을 알아보자.
스크립트에서 값을 확인하고자 하는 변수에 커서를 놓고(중간에 놓던 맨 앞, 맨 뒤에 놓던 상관없다.) 마우스 오른쪽을 누른후 다음 메뉴를 클릭하자.
 



위 방법으로 총 3개의 변수를 등록하도록 하자
P_Param1
P_Param2
P_Result
위 변수를 확인하는 방법은 edit 창 하단에 보면 output 창이 있는데 거기 에 Watches 라는 탭이 있다.
그곳을 확인하면 된다.(없을 경우 output 창에서 마우스 오른쪽을 눌러 추가 시키면 된다.)



다시 디버깅을 해보자.
하단 Watches 에 값이 보이는가??


여기까지가 Toad에서 디버깅하는방법이다.
글이 좀 두서없이 길긴 하지만 한번만 따라해보면 쉽게 할수 있을것이다.
그럼 모두 성공하길 빌며..
bye~~

관련글 더보기