0

2 つの入力パラメーター + 1 つの出力 CLOB パラメーターを持つ Oracle データベースのパッケージにストアド プロシージャがあります。Toad で出力を表示するにはどうすればよいですか? (実行/選択権限のみを持つユーザーが望ましい)

解決:

DECLARE
   my_output_parameter CLOB;
BEGIN 
   my_package.my_stored_proc(1, 2, my_output_parameter);
   DBMS_OUTPUT.PUT_LINE(my_output_parameter);
END;

ステートメントを実行するだけでなく、スクリプトとして実行することを忘れないでください。結果は、データグリッドではなく、DBMS 出力ウィンドウに表示されます。

4

3 に答える 3

1

PL/SQL ブロックと : を挿入するアプローチ dbms_output:

DECLARE
   my_output_parameter CLOB;
BEGIN 
   my_package.my_stored_proc(1, 2, my_output_parameter);

  declare 
    vClob CLOB := my_output_parameter;
    vPos  number;
    vLen  number;
  begin
    vLen := DBMS_LOB.GetLength(vClob);
    vPos := 1;
    while vPos < vLen loop
      DBMS_OUTPUT.Put(DBMS_LOB.Substr(vCLOB, 200, vPos));
      vPos := vPos + 200;  
    end loop;
    DBMS_OUTPUT.new_line;
  end;

END;
于 2013-11-02T09:02:58.587 に答える