- ベストアンサー
Function内に記述したdbms_output.put_lineの表示について
Functionのテスト(デバッグ)にて、 dbms_output.put_lineを使用しております。 しかし、 SQL*Plusで「SET SERVEROUTPUT ON」を発行してから SELECT文を発行しても、 「dbms_output.put_line」で指定した値が表示されません。 ソースにはdbms_output.put_line文を入力しておりますし、 コンパイルも通っております。 SELECT文にてdbms_output.put_lineで指定した値を表示するには、 どのようにすればよいのでしょうか? なお環境は、 Oracle8iを使用しております。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ひょっとしてこれ? dbms_outputはPL/SQLでのみ動くので、 declare a varchar2(1); begin select fnc(2) into a from tbl where col1 = 'hoge' ; end; / なら出力されますが、 select fnc(2) from tbl; だと出力されません。
その他の回答 (1)
- taka451213
- ベストアンサー率47% (436/922)
回答No.1
こんにちは。 うーん、 まさかとは思いますが、バッファサイズが0??? そんな事じゃないですよね・・・。 (^^ゞ
質問者
お礼
ご回答ありがとうございます。 多分、バッファのサイズが0だと、 Functionは動かないと思います。 念のため、バッファサイズを確認しましたが、 0ではありませんでした。
お礼
ご回答ありがとうございます。 やはりプロシージャでないとdbms_outputは出力されませんか・・・ ファンクションのテストにはプロシージャで行うのがよさそうですね。