26

SQL Developerを使用しており、DBMS_OUTPUT.PUT_LINE()を使用して変数の内容をコンソールに出力したいと考えています。1から5までの数字を追加する次のコードを実行していますが、出力が表示されません。

SET SERVEROUTPUT ON;
DECLARE 
n_counter NUMBER := 5; -- Substitute this variable
n_sum     NUMBER := 0;
BEGIN
  WHILE n_counter != 0
  LOOP
    n_sum := n_sum + n_counter;
    n_counter := n_counter -1;
  END LOOP;
  DBMS_OUTPUT.PUT_LINE(n_sum);
END;

さらに、問題をトラブルシューティングするための、非常に高密度のOracle PL / SQLドキュメントよりも優れたリソースを知っていますか?[Java SE7 APIに似ていますか?]

4

1 に答える 1

49

SQL Developerを使用しているため、いくつかのオプションがあります。

SQL Developerで、に移動しView | DBMS Outputて、DBMS出力ウィンドウが表示されていることを確認します。[DBMS出力]ウィンドウで、[プラス]アイコンを選択し、[DBMS出力]ウィンドウにデータを書き込む接続を選択します。次に、右矢印(WindowsではCtrl + Enter)を使用して、SQLワークシートウィンドウでPL/SQLブロックを実行します。出力がDBMS出力ウィンドウに表示されます。

または、SQL*PlusSET SERVEROUTPUT ONコマンドとPL/SQLブロックの両方をSQLワークシートに入れて、スクリプトとして実行することもできます(WindowsではF5)。これにより、[スクリプト出力]ウィンドウの「匿名ブロックが完了しました」というメッセージのすぐ下に出力が表示されます。

注意:Oracle Sql DeveloperのDbms出力では、出力ウィンドウにnullが表示されません。新しい行に移動しますが、null以外のものが返されるまで、以前のnullがすべてそこにあることはわかりません。

于 2012-04-14T01:14:34.103 に答える