(1)在body裏設置斷點(在要設置斷點的行開始點擊鼠標左鍵就可以)。
(2)右鍵點擊TEST.
會出現如下TEST WINDOWS窗口
在下面紅圈中的位置value欄中輸入參數值,因爲varstr是輸入參數,所在要輸入一個值,但是io_cursor是輸入輸出參數,在此做爲輸出參數不預輸入值
(3) Debug-->Start.
如果上面操作步驟中在debug——start不能點擊是灰色的,則是因爲未給此用戶分配調的權限,
如果點擊執行的話則pl/sql developer 調試存儲過程報錯
note:debugging requires the debug connect session system privilege.
原因是用戶權限不夠,使用以下命令授予權限:
用sysdba角色的用戶名登錄,使用如下命令
GRANT debug any procedure, debug connect session TO username
(4)點擊紅色框的按鈕進行單步調試,自動會跳到存儲過程體內。
(5)把鼠標放到變量上可以顯示出該變量的值,。
也可以在變量外點擊鼠標右鏈選擇Add variable to Watches
此時會在下圖紅圈中列出該變量的值
點南上圖紅色粗線中的按鈕,彈出如下對話框顯示該變量值的詳細信息
下面是創建一個簡單存儲過程的例子
CREATE OR REPLACE PACKAGE u_pg_test as
TYPE t_cursor IS REF CURSOR ;
Procedure u_sp_test(varStr varchar2, io_cursor IN OUT t_cursor);
END;
CREATE OR REPLACE PACKAGE BODY u_pg_test AS
Procedure u_sp_test(varStr varchar2, io_cursor IN OUT t_cursor) IS
v_cursor t_cursor;
varSql varchar2(666);
BEGIN
varSql:='Select * aa where ANAME='''||varStr||'''';
OPEN v_cursor FOR varSql;
io_cursor := v_cursor;
END u_sp_test;
END u_pg_test;
http://hi.baidu.com/zhangxia6110/blog/item/98ffa499d1666e066f068c35.html