Skip to Main Content

SQL Developer

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Debugger Does Not Break on Breakpoints

marcusafsMay 1 2014 — edited May 1 2014

I am running one of the tutoials, Testing and Debugging Procedures using SQL Developer 3.1 and am trying to run AWARD_BONUS in debug mode with a break on the select statement as directed by the tutorial.  The first time something about a problem with my firewall and I clicked OK on the error and the proc ran without breaking.  Of course I didn't make notes of the error and now I cannot reproduce it.  Is there a log that might explain what happened?  Can anyone help?  Here is the message output of the run.

Connecting to the database hr_orcl.

Executing PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE

Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( '172.22.9.9', '50911' )

Debugger accepted connection from database on port 50911.

Executing PL/SQL: CALL DBMS_DEBUG_JDWP.DISCONNECT()

Salary for Employee ID 149 currently is: 14900

Commission Percentage for 149 currently is: .2

Salary for Employee ID 149 will be changed to: 15300

Process exited.

Disconnecting from the database hr_orcl.

Debugger disconnected from database.

And here is the proc

create or replace PROCEDURE award_bonus (

  emp_id NUMBER, sales_amt NUMBER) AS

  l_salary    REAL;

  l_commission    REAL;

  comm_missing  EXCEPTION;

BEGIN

  SELECT salary, commission_pct INTO l_salary, l_commission    --********BREAK POINT SET HERE********

    FROM employees

      WHERE employee_id = emp_id;

    dbms_output.put_line('Salary for Employee ID '||emp_id||' currently is: '||l_salary);

    dbms_output.put_line('Commission Percentage for '||emp_id||' currently is: '||l_commission);   

  IF l_commission IS NULL THEN

    RAISE comm_missing;

  ELSE

    l_salary := l_salary  + sales_amt*l_commission;

    dbms_output.put_line('Salary for Employee ID '||emp_id||' will be changed to: '||l_salary);   

    UPDATE employees

      SET salary = l_salary

        WHERE employee_id = emp_id;

   

  END IF;

END award_bonus;

This post has been answered by thatJeffSmith-Oracle on May 1 2014
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on May 29 2014
Added on May 1 2014
3 comments
2,312 views