Ich habe eine einfache Oracle Stored Procedure proc1 wie folgt:
CREATE OR REPLACE PROCEDURE SYS.proc1
IS
total NUMBER := 0;
temp INTEGER := 0;
BEGIN
FOR i IN 1 .. 5
LOOP
temp := 2 * i;
total := total + temp;
END LOOP;
DBMS_OUTPUT.put_line (total);
END;
Der Besitzer von proc1 ist sys. sys hat genügend Rechte, um proc1 zu debuggen, wie der folgende sql-Befehl zeigt:
SELECT *
FROM session_privs
WHERE privilege LIKE '%DEBUG%';
erhalte ich das folgende Ergebnis:
DEBUG CONNECT SESSION
DEBUG ANY PROCEDURE
Ich verwende Oracle 11g, wie die folgenden Sql-Befehle zeigen:
SELECT * FROM v$database;
SELECT * FROM v$instance;
die oberen Abfragen gibt mir:
1223277241,ORCL,8/21/2009 5:28:25 PM,886308,8/21/2009 5:28:28 PM,1,10/15/2007 10:08:59 AM,NOARCHIVELOG,3510666,3399439,CURRENT,8/21/2009 5:28:26 PM,10008,3536169,11/10/2009 3:16:51 PM,NOT ALLOWED,8/21/2009 5:28:25 PM,READ WRITE,MAXIMUM PERFORMANCE,UNPROTECTED,ENABLED,1223308473,1223308473,PRIMARY,886308,DISABLED,SESSIONS ACTIVE,DISABLED,NONE,NO,NO,NO,NO,7,Microsoft Windows IA (32-bit),2,2,3536339,NO,NO,NO,orcl,0,DISABLED,,0,,,NO,,NO,
y
1,orcl,WD00070136,11.1.0.6.0,11/9/2009 11:04:29 AM,OPEN,NO,1,STOPPED,,ALLOWED,NO,ACTIVE,PRIMARY_INSTANCE,NORMAL,NO
in TOAD setze ich einen Haltepunkt bei proc1, dann klicke ich auf die Schaltfläche "execute the plsql with debugger". TOAD führt proc1 aus und zeigt das Ergebnis sofort an. Es hält nur nicht am Haltepunkt an. Ich weiß nicht, warum. Ist jemand schon einmal auf dieses Problem gestoßen und wie kann man es beheben? Vielen Dank!
ps: ich benutze Toad 9.7.2