码迷,mamicode.com
首页 > 数据库 > 详细

plsql 中如何使用dbms_output输出结果

时间:2020-05-11 11:43:57      阅读:468      评论:0      收藏:0      [点我收藏+]

标签:执行   结果   lan   class   image   nbsp   注意   highlight   打印   

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关键字前面不能加注释,不论是--还是/**/

技术图片

  只要有注释,必报这个错。 

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

写在最后

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

 相关推荐:

 

plsql 中如何使用dbms_output输出结果

标签:执行   结果   lan   class   image   nbsp   注意   highlight   打印   

原文地址:https://www.cnblogs.com/Marydon20170307/p/12868022.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!