Oracle 在PL/SQL Developer中测试函数

Oracle 在PL/SQL Developer中测试函数,oracle,plsql,plsqldeveloper,Oracle,Plsql,Plsqldeveloper,这是我的职责: FUNCTION GET(V_IN IN NUMBER) RETURN VARCHAR2 AS V_OUT VARCHAR2(1000); BEGIN function body END; 当我右键单击函数并单击test时,我得到以下结果: begin -- Call the function :result := pkg.get(V_IN => :V_IN); end; 如何用一个值替换变量V_IN?我需要测试一个数字,比如940 当我尝试代码

这是我的职责:

FUNCTION GET(V_IN IN NUMBER) RETURN VARCHAR2 AS
    V_OUT VARCHAR2(1000);
BEGIN
    function body
END;
当我右键单击函数并单击test时,我得到以下结果:

begin
  -- Call the function
  :result := pkg.get(V_IN => :V_IN);
end;
如何用一个值替换变量V_IN?我需要测试一个数字,比如940

当我尝试代码时:

declare
  r varchar2(2000);
begin
  -- Call the function
  r := pkg.get(940);
end;
我得到一个错误:

ORA-01036: illegal variable name/number
你能建议调用这个函数的各种方法吗

附言: 使用的工具:PL/SQL开发人员全方位自动化。版本8.0.1.1502

Oracle数据库11g企业版

“如何用值替换?I中的变量V_?”

在PLSQL Developer中运行测试时,测试窗口的底部窗格是所有替换变量的属性列表。您可以定义数据类型和输入值(适当时)。测试运行后,输出值在此窗口中可用

“ORA-01036:非法变量名称/编号”

不知道是什么原因造成的。这可能不是PLSQL开发者,而是函数代码中的一个bug(您还没有发布)

“如何用值替换?I中的变量V_?”

在PLSQL Developer中运行测试时,测试窗口的底部窗格是所有替换变量的属性列表。您可以定义数据类型和输入值(适当时)。测试运行后,输出值在此窗口中可用

“ORA-01036:非法变量名称/编号”


不知道是什么原因造成的。这可能不是PLSQL开发人员的问题,而是函数代码中的一个错误(您尚未发布)。

单击函数并单击上下文菜单中的
Test
后,将弹出一个测试窗口,其中包含您显示的代码。此窗口中有两个窗格-顶部窗格显示PL/SQL Developer为调用函数而生成的代码,下部窗格包含函数的参数列表。在测试窗口的下窗格中,有一个函数参数列表,包含三列-变量、类型和值。在参数名称所在行的值列中键入所需的值,然后单击启动调试器按钮(测试窗口左上角“测试脚本”选项卡名称下),然后单击运行按钮(紧靠启动调试器按钮右侧)


祝你好运。

一旦你点击了你的函数并点击了上下文菜单中的
Test
,一个测试窗口就会显示你所显示的代码。此窗口中有两个窗格-顶部窗格显示PL/SQL Developer为调用函数而生成的代码,下部窗格包含函数的参数列表。在测试窗口的下窗格中,有一个函数参数列表,包含三列-变量、类型和值。在参数名称所在行的值列中键入所需的值,然后单击启动调试器按钮(测试窗口左上角“测试脚本”选项卡名称下),然后单击运行按钮(紧靠启动调试器按钮右侧)


祝您好运。

当您将原始测试代码修改为自定义代码时,我假设您仍然处于pl/sql“测试窗口”中。Pl/sql有时是有缺陷的。打开一个新的“SQL窗口”,并尝试使用dbms_output.put_line()在那里运行以查看结果

当您将原始测试代码修改为自定义代码时,我假设您仍然处于pl/sql“测试窗口”中。Pl/sql有时是有缺陷的。打开一个新的“SQL窗口”,并尝试使用dbms_output.put_line()在那里运行以查看结果

我可以按如下方式运行该函数:

 declare 
     v varchar2(1000);
 begin
     select pkg.get(940) into v from dual;
     dbms_output.put_line(v);
 end;
此外,根据APC的评论,还有一个属性列表(PL/SQL工作表下方出现的小窗口,有变量类型字段)。您需要在值字段中输入要传递的值,然后单击执行(快捷键-F8)。输出将在同一属性列表窗口中显示并以黄色突出显示。单击下面的链接以参考屏幕截图:


我可以按如下方式运行该函数:

 declare 
     v varchar2(1000);
 begin
     select pkg.get(940) into v from dual;
     dbms_output.put_line(v);
 end;
此外,根据APC的评论,还有一个属性列表(PL/SQL工作表下方出现的小窗口,有变量类型字段)。您需要在值字段中输入要传递的值,然后单击执行(快捷键-F8)。输出将在同一属性列表窗口中显示并以黄色突出显示。单击下面的链接以参考屏幕截图:


您使用的工具是:Allround Automations的PL/SQL Developer,还是Oracle的SQL Developer?Allround Automations的PL/SQL Developer。您使用的工具是:Allround Automations的PL/SQL Developer,还是Oracle的SQL开发人员?Allround Automations的PL/SQL开发人员。我不明白你的意思。你还不明白什么?我现在能理解你想说什么了。我不熟悉这个工具,花了一些时间才弄明白。谢谢PL/SQL Dev版本8可能无法处理已声明但未使用绑定变量的情况。我只有版本11,当您执行代码时,它会自动取消选择下部面板中未使用的绑定变量。我不明白您的意思。您不明白什么?我现在能够理解您的意思了。我不熟悉这个工具,花了一些时间才弄明白。谢谢PL/SQL Dev版本8可能无法处理已声明但未使用绑定变量的情况。我只有版本11,当你执行代码时,它会自动取消选择下面板中未使用的绑定变量。非常感谢,但我自己通过一些自我调查发现了这一点。这正是我对noobie鞋的期望。非常感谢,但我自己通过一些自我研究发现了这一点。PL/SQL有时有问题吗?为什么SQL窗口比测试窗口工作得更好呢?首先,我并没有说SQL窗口“比测试窗口工作得更好”