20

PL / SQLを使い始めたばかりで、次のコードを実行しようとすると、匿名ブロックが完成しますが、テスト出力を取得する必要があると思います。私が間違っていることを知っている人はいますか?

DECLARE
   message varchar2(20) := 'Testing output';
BEGIN
   dbms_output.put_line(message);
END;
/
4

7 に答える 7

54

DBMS_OUTPUTの表示は、プログラムによって異なります。

SQL*PlusおよびOracleSQLDeveloper

最初に実行しますSET SERVEROUTPUT ON;。これは、SQL*Plusまたは最近のバージョンのOracleSQLDeveloperで必要なすべてです。

SET SERVEROUTPUT ON;
begin
    dbms_output.put_line('Testing output');
end;
/

PL/SQL開発者

出力は自動的に検出され、[出力]タブに表示されます。

于 2013-02-10T22:14:44.870 に答える
8

はい、OracleSQLDeveloperに次のステートメントを入力します。

SET SERVEROUTPUT ON;

DECLAREキーワードの直前で、これは機能するはずです。

見つかりませんでしView -> DBMS Outputた。バージョン1.5.5を使用しています。

于 2013-09-22T16:09:25.467 に答える
5

はい。SQLDeveloperで出力を確認する方法があります。

->[表示]->[Dbms出力]をクリックし、[Dbms出力]ウィンドウの[+]記号をクリックします。これで、プロシージャを実行して出力を確認できます。

于 2013-09-12T06:43:27.077 に答える
1

`次のステートメントは、可能な解決策を提供しますこれを試してみてください

SET SERVEROUTPUT ON;

次に、このコードを実行すると、次の出力が得られます

declare
a integer :=10;
b integer :=20;
c integer;
f real;
begin
c := a+b;
dbms_output.put_line('value of c: ' || c);
f := 70.0/3.0;
dbms_output.put_line('value of f: ' || f);

終わり; /

コードは次の出力を提供します

cの値:30 fの値:23.3333333333333333333333333333333333333

PL/SQLプロシージャが正常に完了しました。

于 2017-08-09T17:12:26.607 に答える
0

はい、これは正しいです。このブロックの前に使用する必要があります:

SET SERVEROUTPUT ON

その後、メッセージがウィンドウに表示されます。

それ以外の場合は、SQLDeveloperでチェックインできますselect "View" -> "DBMS Output"。タブ
PLSQL developer下でメッセージを確認できます。OutPut

于 2013-02-11T06:08:34.890 に答える
-2
**SET SERVEROUTPUT ON;**
DECLARE
   a INTEGER :=10;
   b INTEGER :=20;
   c float ;
   d real ;

BEGIN
   c :=a+b;
   dbms_output.put_line('the value of C is :'|| c);
   d := 70.0/3.3;
   dbms_output.put_line('the value of d is:'|| d);
END;

これにより、出力が得られます

the value of C is: 30
the value of d is: 21.21212121212121212121212121212121212121
于 2014-12-11T05:21:15.507 に答える
-2

「EXECUTE;」と入力してプロシージャの実行中に「匿名ブロックが完了」した場合。次に、以下のコマンドを実行して、手順を再度実行します。コマンドは

SERVEROUTPUTをオンに設定します。

于 2016-08-22T06:26:34.553 に答える