PLSQLストアドプロシージャのブレークポイントはどのように設定されますか?
PL/SQLでは、DBMS_OUTPUT.PUT_LINEによりデバッグ情報を標準出力に書き込み、プログラムの実行状況を確認できます。ただ、PL/SQL自体にはブレークポイントによるデバッグ機能がないため、その機能を実現するには何らかのツールを使用する必要があります。
よく利用される方法は、Oracle SQL Developerツールを使用している。以下にSQL DeveloperでPL/SQLストアードプロシージャのデバッグを行なう手順を示します。
- SQL DeveloperでデバッグするPL/SQLのストアドプロシージャを開きます。
- ブレークしたい行を選択したら、右クリックメニューから「ブレークポイント設定」をオンにすることで、その行にブレークポイントが設定されます。
- SQL Developerのツールバーで「デバッグ」ボタンをクリックするか、ショートカットキーCtrl+Shift+F9でデバッグモードを開始する。
- デバッグモードでは、ツールバーの「ステップイン」、「ステップオーバー」、「コンティニュー」などのボタンを使用してプログラムの実行を制御できます。
- 指定したブレークポイントで実行が中断され、現在の変数値、コールスタックなどの情報が表示されます。「ウォッチ」機能を使うことで変数値を監視することができます。また、「ブレークポイント」ビューを使うことでブレークポイントを管理することができます。
- デバッグ中は、「再開」ボタンで以降のブレークポイントまたはプログラム終了までプログラムの実行を続行できます。
SQL Developer 以外の PL/SQL 開発ツールとしては、Toad、PL/SQL Developer などがあり、同様のブレークポイントデバッグ機能を提供しています。具体的な操作手順は異なる場合がありますが、基本的な考えと使い方は共通しています。