Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL の使用法 » ストアド・プロシージャとトリガ » プロシージャ、関数、トリガ、イベントのデバッグ » チュートリアル:デバッガの使用開始 » レッスン 2:ストアド・プロシージャのデバッグ

 

診断内容を確認し、バグを修正する

top_value が初期化されていないことが原因であるという仮説を、プロシージャ・コードを変更せずに、デバッガでテストできます。

♦  仮説をテストするには、次の手順に従います。
  1. [デバッガの詳細] ウィンドウで、[ローカル] タブをクリックします。

  2. [Top_Value] 変数をクリックし、[値] フィールドに 3000 と入力します。

  3. [This_Value] 変数の [値] フィールドが 3000 よりも大きな値になるまで [F11] キーを繰り返し押します。

  4. ブレークポイントをクリックして、グレーにします。

  5. [F5] キーを押して、プロシージャを実行します。

    [Interactive SQL] ウィンドウが再び表示されます。正しい結果が表示されています。

    top_company top_value
    Chadwicks 8076

仮説が正しいことが確認されました。top_value が初期化されていないことが原因でした。

♦  バグを修正するには、次の手順に従います。
  1. [モード] - [設計] を選択します。

  2. 右ウィンドウ枠で、次の文を検索します。

    OPEN cursor_this_customer;
  3. top_value 変数を初期化する新しい行を入力します。

    SET top_value = 0;
  4. [ファイル] - [保存] を選択します。

  5. プロシージャを再度実行し、Interactive SQL に正しい結果が表示されることを確認します。

このレッスンは終了です。[Interactive SQL] ウィンドウが開いている場合は閉じます。