디버그 기능은 중요하고 일반적으로 사용되는 기능입니다. 이 문서의 내용은 한국어”개발자 디버그”기능을 사용하는 방법에 대해 설명합니다.
개발자 디버그 세션을 어떻게 시작합니까?
전체 명령문이 한 번에 실행되므로 의미가 없습니다. 여러 단계가 있는 코드에서만 디버깅할 수 있습니다.
따라서 디버깅할 코드를 식별해야 합니다. 이를 위해 함수나 프로시저와 같은 코드 개체가 필요합니다.이 프로시저는 간단한 쿼리를 실행하고 결과를 콘솔에 출력합니다.
CREATE OR REPLACE PROCEDURE testFirstNameIS firstName VARCHAR2(20);BEGIN select first_name into firstName From student where student_id = 1; dbms_output.put_line(firstName);END;
이 문제를 디버깅하는 첫 번째 단계는 무엇입니까?
1 단계–디버그 용 컴파일
먼저 개체 탐색기로 이동하여 프로 시저 또는 함수를 찾으십시오.
마우스 오른쪽 버튼을 클릭하고 디버그 용 컴파일을 선택하십시오.이렇게 하면 개체를 다시 컴파일하고 디버깅을 위해 추가 정보를 추가합니다.
참고:프로덕션 서버에서는 이 작업을 수행하지 말고 개발 또는 테스트 서버에서만 수행해야 합니다. 그러나 다시,당신은 어쨌든 생산에 디버깅해서는 안됩니다!
이 작업을 수행하는 또 다른 방법은 워크시트 뷰에서 개체를 열고 디버그용 컴파일을 선택하는 것입니다.2 단계–중단점 설정 또는 디버그 동작 변경
성공적으로 컴파일되면 디버그 세션을 설정해야 합니다.
지금 디버그를 시작하면 오류가 발견되지 않으면 코드가 실행되고 중지되지 않습니다.
당신이 그것을 중지하려면,당신은 두 가지 방법으로 그것을 할 수 있습니다.
먼저 중단점을 설정합니다. 중단점은 코드에서 디버거가 중지되는 지점입니다. 코드가 취한 경로를 분석하고 어떤 변수가 초기화되고 설정되었는지 확인하는 데 유용합니다.
중단점을 설정하려면 중단점을 설정할 줄에서 코드의 왼쪽 여백을 클릭합니다. 제대로하면,빨간 점은 여백에 나타납니다.중단점을 끄려면 빨간색 단추를 다시 클릭합니다.
또는 선택한 줄의 중단점을 토글하려면 키보드 단축키를 사용할 수 있습니다.
중단점을 설정하지 않으려는 경우 코드를 실행하고 단계별로 실행할 수 있습니다. 그러나 다른 십오에서 찾을 수 있듯이 단계를 클릭하여 디버그 세션을 시작하는 단추가 없습니다. 개발자의 기본”디버그”작업은 중단점이 발생할 때까지 실행됩니다.
도구>환경 설정으로 이동하여 디버거를 클릭하여 변경할 수 있습니다.
“디버깅 시작 옵션”이라는 옵션을 단계별로 변경합니다. 이렇게 하면 디버그를 클릭하고 첫 번째 코드 줄로 실행할 수 있습니다.
확인을 클릭합니다.
3 단계–데이터베이스에 연결
일반적으로 잊어 버린 단계는 워크 시트 창에서 데이터베이스에 연결하는 것입니다. 이 오른쪽 상단에있는 드롭 다운입니다. 이미 올바른 데이터베이스로 설정되어있을 수 있지만 그렇지 않은 경우 원하는 값을 선택하십시오.
5 단계–디버그!
이제 환경과 코드를 설정 한,당신은
디버깅을 시작할 수 있습니다
작은 무당 벌레처럼 보이는 디버그 버튼을 클릭합니다.
또는 CTRL+SHIFT+F10.
창이 나타납니다.:이 창은 기본적으로 디버깅할 프로시저를 실행하기 위해 익명의 코드 블록을 만듭니다.7182>
왜 이런 일이 일어 났습니까? 그것은 그래서 당신은 당신이 처리 할 수있는 그 복잡한 버그의 모든 매우 유용 코드를 실행하기 전에 어떤 매개 변수 또는 변수를 설정할 수 있습니다.
코드를 변경하거나 원하는 매개 변수를 추가하고 확인을 클릭합니다.
방화벽 경고가 나타나면”액세스 허용”을 클릭 할 수 있습니다.이제 디버거가 실행되고 있습니다!
개발자 디버그 명령
개발자 디버거에서 사용할 수 있는 몇 가지 명령이 있습니다.
왼쪽에서 오른쪽으로,큰 붉은 광장으로 시작,그들은:
- 중지-디버그 세션을 중지합니다.
- 실행 지점 찾기-코드가 중지된 위치로 커서를 이동합니다.
- 단계 오버-선택한 줄을 단계별로 실행하고 코드의 다음 줄로 이동합니다.
- 단계 시작-선택한 코드 줄로 단계를 수행하여 디버거가 코드 줄이 현재 켜져 있는 메서드 또는 함수 내부에서 계속 진행되도록 합니다.
- 스텝 아웃-현재 있는 메소드 또는 함수에서 단계적으로 벗어나 위의 레벨로 돌아갑니다.
- 메소드의 끝 단계-메소드의 끝으로 이동합니다.
- 다시 시작-다른 오류 또는 중단점에 도달할 때까지 디버깅을 계속합니다.
- 일시 중지-디버거를 해당 위치에서 일시 중지합니다.
- 모든 중단점 일시 중단-현재 데이터베이스의 모든 중단점을 해제합니다.
이전에 다른 디버그 도구를 사용한 적이 있다면이 개념은 이미 익숙 할 수 있습니다.