在 PL/SQL 开发人员中测试功能
Testing a function in PL/SQL Developer
这是我的功能:
FUNCTION GET(V_IN IN NUMBER) RETURN VARCHAR2 AS
V_OUT VARCHAR2(1000);
BEGIN
function body
END;
当我右键单击函数并单击测试时,我得到以下信息:
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
Can you suggest various ways of calling this function?
PS:
使用的工具:PL/SQL Developer Allround Automations。版本 8.0.1.1502
Oracle 数据库 11g 企业版
"How do I substitute a value for this variable V_IN? I "
当您 运行 在 PLSQL Developer 中进行测试时,测试的底部窗格 window 是所有替换变量的 属性 列表。您定义数据类型和输入值(适当时)。输出值在这个window测试后是可用的运行。
"ORA-01036: illegal variable name/number"
不确定是什么原因造成的。它可能不是 PLSQL Developer,而是您的函数代码中的错误(您尚未发布)。
单击您的函数并在上下文菜单中单击 Test
后,将显示带有您显示的代码的测试 window。此 window 中有两个窗格 - 顶部窗格显示 PL/SQL 开发人员生成的用于调用函数的代码,下方窗格包含函数的参数列表。在测试 window 的下方窗格中,有一个包含三列的函数参数列表 - 变量、类型和值。在参数名称所在行的“值”列中键入所需的值,然后单击“启动调试器”按钮(测试 window 左上角,'Test Script' 选项卡名称下),然后单击运行 按钮(紧靠 Start Debugger 按钮的右侧)。
祝你好运。
我假设你还在pl/sql"Test window",当你把原来的测试代码修改成你的习惯。 Pl/sql 有时是越野车。打开一个新的 "SQL window" 并尝试使用 dbms_output.put_line() 运行 来查看结果。
我能够运行函数如下:
declare
v varchar2(1000);
begin
select pkg.get(940) into v from dual;
dbms_output.put_line(v);
end;
此外,根据 APC 的评论,有一个 属性 列表(小的 window 出现在 PL/SQL 工作表下方,具有 变量 、Type 和 Value 字段)。您需要在值字段中输入您希望传递的值,然后单击执行(快捷键 F8)。输出将在同一个 属性 列表 window 中显示并以黄色突出显示。点击下方link查看截图:
Function Call with single parameter
这是我的功能:
FUNCTION GET(V_IN IN NUMBER) RETURN VARCHAR2 AS
V_OUT VARCHAR2(1000);
BEGIN
function body
END;
当我右键单击函数并单击测试时,我得到以下信息:
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
Can you suggest various ways of calling this function?
PS: 使用的工具:PL/SQL Developer Allround Automations。版本 8.0.1.1502
Oracle 数据库 11g 企业版
"How do I substitute a value for this variable V_IN? I "
当您 运行 在 PLSQL Developer 中进行测试时,测试的底部窗格 window 是所有替换变量的 属性 列表。您定义数据类型和输入值(适当时)。输出值在这个window测试后是可用的运行。
"ORA-01036: illegal variable name/number"
不确定是什么原因造成的。它可能不是 PLSQL Developer,而是您的函数代码中的错误(您尚未发布)。
单击您的函数并在上下文菜单中单击 Test
后,将显示带有您显示的代码的测试 window。此 window 中有两个窗格 - 顶部窗格显示 PL/SQL 开发人员生成的用于调用函数的代码,下方窗格包含函数的参数列表。在测试 window 的下方窗格中,有一个包含三列的函数参数列表 - 变量、类型和值。在参数名称所在行的“值”列中键入所需的值,然后单击“启动调试器”按钮(测试 window 左上角,'Test Script' 选项卡名称下),然后单击运行 按钮(紧靠 Start Debugger 按钮的右侧)。
祝你好运。
我假设你还在pl/sql"Test window",当你把原来的测试代码修改成你的习惯。 Pl/sql 有时是越野车。打开一个新的 "SQL window" 并尝试使用 dbms_output.put_line() 运行 来查看结果。
我能够运行函数如下:
declare
v varchar2(1000);
begin
select pkg.get(940) into v from dual;
dbms_output.put_line(v);
end;
此外,根据 APC 的评论,有一个 属性 列表(小的 window 出现在 PL/SQL 工作表下方,具有 变量 、Type 和 Value 字段)。您需要在值字段中输入您希望传递的值,然后单击执行(快捷键 F8)。输出将在同一个 属性 列表 window 中显示并以黄色突出显示。点击下方link查看截图:
Function Call with single parameter