なぜ私はヒキガエルに設定されたブレークポイントで私のPL / SQLプログラムを停止することはできません

StackOverflow https://stackoverflow.com/questions/1706163

  •  19-09-2019
  •  | 
  •  

質問

次のように

私は、単純なOracleのストアドプロシージャPROC1を持っています:

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;

PROC1の所有者はSYSです。 sysが次のSQLコマンドが示すようにPROC1デバッグするために十分な権限を持っています:

SELECT *
  FROM session_privs
 WHERE privilege LIKE '%DEBUG%';

私は次のような結果を得ることができます:

DEBUG CONNECT SESSION
DEBUG ANY PROCEDURE
次のSQLコマンドが示すように、

私は、Oracle 11gのを使用します:

SELECT * FROM v$database;
SELECT * FROM v$instance;

上位クエリが私を与えます:

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,

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

TOADに、私はPROC1にブレークポイントを設定し、その後、私は、「デバッガでPLSQLを実行」ボタンをクリックしてください。ヒキガエルはPROC1を実行し、すぐに結果を表示します。それはちょうどブレークポイントで停止しません。私は理由を知りません。誰もが今までにこの問題に遭遇していますか?どのようにそれを修正するのですか?グレートありがとう!

PS:私はヒキガエル9.7.2を使用する

役に立ちましたか?

解決

どこで正確にあなたのブレークポイントを置けばいいの?私はあなたがCREATE PROCEDUREラインの上に置いていない願っています。

あなたがそのような上に置く場合は、

、それは動作しません(その文は手順のみを作成し、それを実行しません)。あなたはどこからPROC1を呼び出すと、このように、それが呼び出された行にブレークポイントを配置する必要があります:

BEGIN
   proc1; -- place your breakpoint on this line
END;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top