• 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关键字前面可以加注释,但是注释内容不能含中文!

      只要注释中包含中文,必报这个错,所以要么不用注释,要么加英文注释

      存储过程也是这样查看输出结果。 

    写在最后

      哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

     相关推荐:

  • 相关阅读:
    Android ADB的一些用法
    我想搞个python版的http代理服务器出来
    用Python创建大文件
    串口号都属于“使用中”的解决方法
    wxPython入门(二)
    Android Studio安装后不能启动的解决办法
    STC单片机不需要按电源开关下载的方法!
    最近要做的一些事情
    关于“用香蕉弹琴”的一点解释
    stc15系列单片机ISP编程失败率是相当高啊!
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/12868022.html
Copyright © 2020-2023  润新知