Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 如何在PL/SQL Developer中轻松检查函数的返回值_Oracle_Plsql_Oracle11g_Plsqldeveloper - Fatal编程技术网

Oracle 如何在PL/SQL Developer中轻松检查函数的返回值

Oracle 如何在PL/SQL Developer中轻松检查函数的返回值,oracle,plsql,oracle11g,plsqldeveloper,Oracle,Plsql,Oracle11g,Plsqldeveloper,完全是数据库新手。现在我创建了一个返回数字的函数,我只想检查这个函数的结果。我使用的工具是PL/sqldeveloper,但我找不到输出窗口或其他什么。当然,在这种情况下,我不想在任何表中写入任何内容。作为一名C++/C开发人员,我发现学习如何开发PL/SQL有点困难。我甚至不能轻易地看到我函数的编译错误 1有一种输出窗口: 尝试在sql窗口或测试窗口中执行此操作 begin DBMS_OUTPUT.PUT_LINE( 'hello world'); end; 您应该在

完全是数据库新手。现在我创建了一个返回数字的函数,我只想检查这个函数的结果。我使用的工具是PL/sqldeveloper,但我找不到输出窗口或其他什么。当然,在这种情况下,我不想在任何表中写入任何内容。作为一名C++/C开发人员,我发现学习如何开发PL/SQL有点困难。我甚至不能轻易地看到我函数的编译错误

1有一种输出窗口: 尝试在sql窗口或测试窗口中执行此操作

  begin
        DBMS_OUTPUT.PUT_LINE( 'hello world');
  end;
您应该在sql窗口/测试窗口的输出选项卡中看到hello world。如果看不到,请确保选中该选项卡中的启用复选框

2如果您的函数没有副作用,那么它在执行过程中确实会修改表数据,您可以在select语句中使用它,正如@a_horse_和_no_name已经告诉您的那样

3要查看编译错误,请确保在程序窗口内编译过程/触发器/函数/包。程序窗口是专门为编辑必须编译的代码而设计的pl/sql开发人员窗口。它向您显示编译错误、提示、代码折叠、重构

4如果要在调试器中运行函数,应使用测试窗口。我建议您先阅读一下pl/sql开发人员手册

我只想检查这个函数的结果

您只需在SELECT语句中调用函数即可

比如说,

SQL> CREATE OR REPLACE
  2    FUNCTION f_get_date
  3      RETURN DATE
  4    IS
  5      v_date DATE;
  6    BEGIN
  7      v_date := SYSDATE;
  8      RETURN v_date;
  9    END;
 10  /

Function created.

SQL>
SQL> sho err
No errors.
SQL>
SQL> SELECT f_get_date FROM dual;

F_GET_DATE
--------------------
27-AUG-2015 17:06:31

SQL>

如果您不熟悉PL/SQL开发工具,您可能会发现它很有用。

从dual中选择您的函数;谢谢你的回答。但是我使用的是SQL窗口,但我没有看到启用的复选框。2尽管我可以看到《用户指南》中提到的程序窗口,但无法直接找到如何打开它。当Google search for program window pl sql developer的第一页只显示了三次出现的“program window”字样时,这真是令人沮丧。3顺便说一句,我试着用谷歌搜索注释代码块的快捷方式,但没有成功,只是为了确定:你正在使用这个程序,对吗?如果您使用的是allroundautomations的pl/sql developer:可以从file->new->program window打开一个新的程序窗口,而且您可以通过使用窗口内部的上下文菜单来切换任何窗口的窗口类型,将窗口更改为…是的,这就是我正在使用的窗口。一个可悲的事实是,当我在网上搜索时,许多页面与Oracle SQL developer混合在一起。什么不能更改名称:但是无论如何,现在我可以看到结果了,我已经坐下来阅读调试用户指南OK:SQL窗口有三个选项卡:SQL输出和统计信息。dbms_output.put_行转到output选项卡。在该选项卡中有“已启用”复选框。。。还有dbms_输出可以写入的最大字节数,我知道这是SQL PLUS,但我要求PL/SQL开发者。例如shoerr在这里不起作用。我相信对于像你这样的老兵来说,他们基本上是一样的,但对我来说不是。此外,我只能访问客户端。但正如许多人已经建议的那样,从dual中选择函数肯定是正确的working@tetepl/sqldeveloper有一个与sql/plus完全等效的窗口。它被称为命令窗口文件->新建->命令window@CarloSirna是的,现在我发现当有人提到XX窗口时,它也可能意味着New->XX窗口。我一直认为它在“工具”或“窗口”菜单中有意义。@t浏览我提供的“PL/SQL开发人员设置”链接,您将发现许多其他功能。