plsql 中如何使用dbms_output輸出結果


1.情景展示

  在plsql中如何使用dbms_output輸出執行結果?

  如上圖所示,運行后報錯:ora-00922

2.原因分析

  set serveroutput on 語句的作用是:打開Oracle自帶的輸出方法dbms_output,在執行以后,使用dbms_output方法可以輸出信息。

  但是,它是sqlplus語句,不是sql語句,所以不能在sql window中使用,該命令不是寫在pl/sql中的,而是在sql/plus中執行。SQL WINDOW里面可以不加set serveroutput on就可以使用dbms_output。

3.解決方案

  也就是說,在plsql中,不能也不用調用這句話,是多余的,畫蛇添足!網絡上的代碼真是嚇人! 

  刪掉這行代碼

declare
  v_score number := &score;
begin
  if v_score >= 80 then
    dbms_output.put_line('優秀');
  elsif v_score >= 60 then
    dbms_output.put_line('良好');
  else
    dbms_output.put_line('不好');
  end if;
end;

  執行

  執行結束

  到這里,很多人都傻眼了,搞什么,結果怎么沒有打印出來? 

  你剛在實在左側的SQL視圖中,切換到輸出視圖就能看到結果啦。 

  這,才是在plsql中使用的正確用法。 

注意:

  declare關鍵字前面可以加注釋,但是注釋內容不能含中文!

  只要注釋中包含中文,必報這個錯,所以要么不用注釋,要么加英文注釋

  存儲過程也是這樣查看輸出結果。 

寫在最后

  哪位大佬如若發現文章存在紕漏之處或需要補充更多內容,歡迎留言!!!

 相關推薦:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM