如何在Toad中找到函数的返回值是什么?
我正在运行类似这样的代码:
declare r number;
begin
r:= packagename.functionname(paraname);
end;
我无法弄清楚如何将“r”返回到数据网格,有些帖子建议使用DBMS输出,但在运行代码时没有写入任何内容。
该函数执行更新,提交,调用其他函数并在其中包含游标。
答案 0 :(得分:13)
begin
dbms_output.put_line(packagename.functionname(paraname));
end;
在运行此选项之前,您需要打开输出。为此,选择编辑器底部的“DBMS输出”选项卡,然后单击选项卡下最左边的按钮(它应该描绘一个红色圆圈,工具提示“打开输出”(如果它是一个绿色圆圈,输出已经开始))。
查询结果将写入“DBMS输出”窗口,而不是“数据网格”(您可能需要等待几秒钟才能进行轮询以获取结果)。如果使用用户定义的类型或引用游标,则这将是不够的,您需要在写出结果之前在匿名块中处理结果。
答案 1 :(得分:8)
如何:
select packagename.functionname(paraname) from dual;
答案 2 :(得分:0)
Klaus的回答
从dual选择packagename.functionname(paraname);
为我工作,但它只返回一个光标。这在Toad的数据网格中显示为(CURSOR)。一旦我双击它,它就打开了一个带有该光标数据网格的新窗口,我看到了我的结果。