PL/SQLのデバッグ機能

JDeveloper 9.0.3には、PL/SQL用のフル機能デバッガが含まれています。PL/SQLデバッグ機能の重要な部分は次のとおりです。

  • プログラムの実行制御: JDeveloperのPL/SQLデバッガは、ステップ実行トレース実行ステップ・アウトカーソル位置まで実行停止再開終了など、プログラムの実行を制御する多数のコマンドを備えています。
  • 変数の表示と修正:デバッガの停止中に、ユーザーはスマート・データ、データ、監視式、またはインスペクタ・ウィンドウから変数の値を調べて変更できます。PL/SQLコレクションについては、デバッガ内で可視値の範囲を調整できます。
  • カスタマイズ可能なブレークポイント:ブレークポイントは非常に柔軟に設定できます。PL/SQLデバッグの場合は、ソース・ブレークポイント(特定のプログラム単位内の実行可能コードの特定行で実行を中断する)および実行ブレークポイント(未処理の例外または特定のOracleエラー発生時に実行を中断する)を使用できます。PL/SQL用に条件付きブレークポイントを定義して、デバッガを停止する(デフォルト)、ビープ音を出す、テキスト・ファイルに発生情報を記録する、その他のブレークポイントを有効/無効にするなど、ブレークポイントの動作をカスタマイズできます。

PL/SQLデバッグ情報は、JDeveloperのいくつかのウィンドウから入手できます。次のリストに、デバッグ中に入手できる情報の例を示します。

  • コード・エディタ: 現行の実行位置を表示します。また、カーソルで指定したコード個所の下にある変数に対して、ツールヒントによってその名前と現行値が表示されます。
  • ブレークポイント・ウィンドウ: 定義済ブレークポイントを一覧表示します。このウィンドウを使って、新しいブレークポイントを追加したり、既存ブレークポイントの動作をカスタマイズできます。
  • データ・ウィンドウ: パッケージ変数、パッケージ本体変数、現在のプロシージャまたはファンクションで宣言された変数、およびローカル変数(ネスト・ブロック内でまたは暗示的に宣言されたもの)を含め、現在有効範囲内にあるすべての変数を表示します。
  • スマート・データ・ウィンドウ: デフォルトでは、実行されている行およびそれ以前の2箇所で参照される変数のみを表示します。なお、これはカスタマイズ可能です。たとえば、スマート・データ・ウィンドウには実行コード行およびその次の2行で使用される変数と、それ以前の4箇所で使用されている変数を表示させるというようにカスタマイズできます。
  • 監視式ウィンドウ: ウィンドウのコンテキスト・メニューから"監視式の追加"を選択して式を入力する、またはその他のウィンドウ(データ・ウィンドウやスマート・データ・ウィンドウ)から監視式ウィンドウまで変数をドラッグすることにより、監視式ウィンドウに追加した式または変数を表示します。
  • スタック・ウィンドウ: 実行スタックを表示します。たとえば、 PROC_A プロシージャがPROC_B をコールし、次にPROC_BFUNC_Cをコールするような場合、現行の実行位置がFUNC_Cであればスタック・ウィンドウは次のような内容を表示します(JDEV_TMP_PROC_1は、PROC_Aを実行するためにJDeveloperによって一時的に作成されたプロシージャです)。 なお、スタック・ウィンドウを使って、デバッガの表示情報を変更できます。つまり、前述の例で、スタック・ウィンドウ内のPROC_Bをダブルクリックすると、デバッガ・ウィンドウ(およびコード・エディタ)の情報が更新され、PROC_Bに関するデータが表示されます。
  • クラス・ウィンドウ: このデータベース・セッションにロード済のPL/SQLプログラムおよびJavaクラスの一覧を表示します。