首页 > 解决方案 > PL SQL 我的查询说编译成功,但找不到结果

问题描述

我的查询显示编译成功,但找不到结果。任何人都可以建议吗?PLSQL 新手。谢谢

标签: oracleplsql

解决方案


这就是我理解问题的方式。

您没有具体说明您做了什么(它是什么类型的 PL/SQL 代码?),但是 - 它可能是一个存储过程:

SQL> create or replace procedure p_test as
  2  begin
  3    dbms_output.put_line('Hello');
  4  end;
  5  /

Procedure created.

或者可能是一个匿名的 PL/SQL 块:

SQL> begin
  2    dbms_output.put_line('Hello');
  3  end;
  4  /

PL/SQL procedure successfully completed.

SQL>

这两个都应该显示“Hello”消息。显然,他们俩都没有。我不知道您的 PL/SQL 代码做了什么,但是 - 如果它还显示某些内容,请启用输出。在 SQL*Plus、SQL Developer 和其他一些支持它的工具中,你可以运行

SQL> set serveroutput on

如果它是您创建的存储过程,则必须执行它才能看到结果:

SQL> exec p_test
Hello                                     --> "Hello" is here!

PL/SQL procedure successfully completed.

SQL>

或者,如果它是一个匿名的 PL/SQL 块,你不必做任何特别的事情:

SQL> begin
  2    dbms_output.put_line('Hello');
  3  end;
  4  /
Hello                                     --> "Hello" is here!

PL/SQL procedure successfully completed.

SQL>

看看这是否有帮助。如果没有,请更好地解释问题,我们会尽力提供帮助。


推荐阅读