plsql 中如何使用dbms_output输出结果

Posted Marydon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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关键字前面可以加注释,但是注释内容不能含中文!

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

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

写在最后

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

 相关推荐:

 

以上是关于plsql 中如何使用dbms_output输出结果的主要内容,如果未能解决你的问题,请参考以下文章

plsql输出九九乘法表如何换行?

PL/SQL中测试存储过程,如何立即输出DBMS_OUTPUT的语句。

在 winform 应用程序中使用 PLSQL dbms_output.put_line 输出

plsql如何设置查询结果格式化

datagrips 存储过程DBMS_OUTPUT.PUT_LINE输出问题

PLSQL程序设计(Oracle)