如何将任何返回 SYS_REFCURSOR 的函数导出到 CSV 或 Excel,或者至少导出到我可以选择、复制和粘贴到某处的任何输出
Posted
技术标签:
【中文标题】如何将任何返回 SYS_REFCURSOR 的函数导出到 CSV 或 Excel,或者至少导出到我可以选择、复制和粘贴到某处的任何输出【英文标题】:How do I export any function that returns SYS_REFCURSOR to CSV or Excel or at least to any output where I can select, copy, and paste it somewhere 【发布时间】:2016-08-23 03:24:54 【问题描述】:假设我有以下内容:
function fn_myfunction ( param1 varchar2 ) RETURN SYS_REFCURSOR;
我只需要一个工具(免费)或代码 sn-p,我可以在其中简单地插入 select fn_myfunction( param1 ... ) from dual
并将所有结果提供给 CSV 或 Excel 或任何我至少可以选择、复制和粘贴的输出不需要其他任何东西的地方。
我不需要需要一个工具或代码 sn-p 需要我指定哪些列将在 SYS_REFCURSOR
中,因为有很多他们,我不想对我将遇到的所有功能和新功能都这样做。我只需要渲染 sys_refcursor 包含的所有内容的东西。
或者:
Toad 实际上会在您触发查询后双击第一行以在网格中显示结果。但问题是它不允许我从中选择行,因此我可以将其复制并粘贴到有用的地方。如果您知道如何从中复制,那也可以作为这个问题的答案。我正在使用 Toad 10.1.1.8。
【问题讨论】:
您可能需要使用 PLSQL Developer。右击函数,点击test。打开测试窗口,完成后可以打开结果sys_refcursor
,然后导出到Excel、csv、sql 等等。
太糟糕了,我们没有那个。 :(
除了Toad,我还有Oracle SQL Developer。它也没有帮助。
试试PLSQL Developer。
@Stepan,我需要一些可以长期使用的东西
【参考方案1】:
在玩了Oracle SQL Developer之后,发现可以通过以下方式完成:
-
来自 oracle sql 开发人员的触发查询
双击第一行。它应该变成灰色或其他东西
滚动到最右侧并点击“笔”图标
它应该会显示一个包含所有行的弹出对话框
选择所有要复制的记录
缺点: 不允许您复制标题。
如果有人可以发布比这更好的答案,我很乐意接受它作为答案。
【讨论】:
以上是关于如何将任何返回 SYS_REFCURSOR 的函数导出到 CSV 或 Excel,或者至少导出到我可以选择、复制和粘贴到某处的任何输出的主要内容,如果未能解决你的问题,请参考以下文章
ORACLE:写入返回 sys_refcursor 的函数的文件结果
如何在 oracle 中使用 sys_refcursor 创建动态 sql