【发布时间】:2011-01-28 10:25:09
【问题描述】:
如何在 Toad 中找出函数的返回值是什么?
我正在运行类似这样的代码:
declare r number;
begin
r:= packagename.functionname(paraname);
end;
我不知道如何将“r”返回到数据网格,一些帖子建议使用 DBMS 输出,但在我运行代码时没有写入任何内容。
该函数执行更新、提交、调用其他函数并在其中包含游标。
【问题讨论】:
如何在 Toad 中找出函数的返回值是什么?
我正在运行类似这样的代码:
declare r number;
begin
r:= packagename.functionname(paraname);
end;
我不知道如何将“r”返回到数据网格,一些帖子建议使用 DBMS 输出,但在我运行代码时没有写入任何内容。
该函数执行更新、提交、调用其他函数并在其中包含游标。
【问题讨论】:
begin
dbms_output.put_line(packagename.functionname(paraname));
end;
在运行此之前,您需要打开输出。为此,选择编辑器底部的“DBMS 输出”选项卡,然后单击选项卡下最左侧的按钮(它应该描绘一个红色圆圈,工具提示“打开输出”(如果它是一个绿色圆圈,输出已经开启))。
查询的结果将被写入“DBMS 输出”窗口,而不是“数据网格”(您可能需要等待几秒钟才能让轮询获取结果)。如果您使用用户定义的类型或引用游标,这将是不够的,您需要在写出之前在匿名块中处理结果。
【讨论】:
怎么样:
select packagename.functionname(paraname) from dual;
【讨论】:
来自克劳斯的回答
select packagename.functionname(paraname) from dual;
为我工作,但它只返回一个光标。这在 Toad 的数据网格中显示为 (CURSOR)。一旦我双击它,它就会打开一个新窗口,其中包含该光标的数据网格,我看到了我的结果。
【讨论】: