99

私は Oracle SQL を使用しています (SQLDeveloper では、SQL Worksheet を使用しています)。次のように、select の前にステートメントを出力したいと思います。

PRINT 'Querying Table1';
SELECT * from Table1;

テキスト出力を印刷/表示するには何を使用しますか? Bind Variable Table1is NOT DECLARED. というエラーが表示されるため、Print ではありません。DBMS_OUTPUT.PUT_LINE は不明なコマンドです。(明らかに、私は経験の浅い SQLDeveloper および Oracle ユーザーです。Print には同義語があるはずですが、それが何であるかを知らずにヘルプを見つけるのに苦労しています。)

4

8 に答える 8

155

ここに画像の説明を入力

簡単なコメント:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line('simple comment');
end;
/

-- do something

begin
    DBMS_OUTPUT.put_line('second simple comment');
end;
/

あなたは得るべきです:

anonymous block completed
simple comment

anonymous block completed
second simple comment

変数の結果を出力したい場合は、別の例を次に示します。

set serveroutput on format wrapped;
declare
a_comment VARCHAR2(200) :='first comment';
begin
    DBMS_OUTPUT.put_line(a_comment);
end;

/

-- do something


declare
a_comment VARCHAR2(200) :='comment';
begin
    DBMS_OUTPUT.put_line(a_comment || 2);
end;

出力は次のようになります。

anonymous block completed
first comment

anonymous block completed
comment2
于 2008-12-11T16:45:59.830 に答える
45
PROMPT text to print

注:ステートメントの実行 (Ctl + Enter) ではなく、スクリプトとして実行 (F5) を使用する必要があります。

于 2010-11-03T07:09:54.793 に答える
21

エコーをオンに設定できます。

set echo on
REM Querying table
select * from dual;

SQLDeveloperで、F5キーを押してスクリプトとして実行します。

于 2008-10-10T21:50:10.757 に答える
16

主な回答では、dbms 出力ウィンドウを開く必要がある新しいインストールの手順が省略されていました。

ここに画像の説明を入力

次に、使用したスクリプト:

dbms_output.put_line('Start');

別のスクリプト:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line('jabberwocky');
end;
于 2019-02-15T17:40:34.140 に答える
14

次のような選択ステートメントにテキストを入れることができます...

SELECT 'Querying Table1' FROM dual;
于 2008-10-12T02:25:30.343 に答える
7

私にとっては、それを動作させることしかできませんでした

set serveroutput on format word_wrapped;

ラップされた WRAPPED はエラーをスローしました: SQLPLUS コマンドが失敗しました - 十分な引数がありません

于 2011-03-02T16:19:11.083 に答える
1

すべての SQL ステートメントをエコーするのではなく、簡単に識別できるスクリプトの結果だけを表示したい場合は、次のようにします。

エコーをオンに設定

REM MyFirstTable

エコーをオフにする

MyFirstTable から削除します。

エコーをオンに設定

REM MySecondTable

エコーをオフにする

MySecondTable から削除します。

上記の例の出力は次のようになります。

-REM MyFirstTable

13行削除。

-REM MySecondTable

27行削除。

于 2014-12-08T23:24:00.483 に答える