25

使用 SQL Developer 运行查询效果很好,但如果我不是先运行查询然后右键单击结果集并导出到 csv 例程,我会节省很多时间。

我想知道这是否是 SQL Developer 中的一种方式:1)编写查询,然后选择查询的结果应该导出到磁盘。2) 编写一个包含多个查询的队列,每个查询都将其结果写入磁盘。

4

3 回答 3

43

您可以使用spool命令(SQL*Plus 文档,但 SQL Developer 也支持许多此类命令之一)将结果直接写入磁盘。每个都可以更改正在写入的文件,因此您可以通过在它们之间放置命令spool来将多个查询写入不同的文件:spool

spool "\path\to\spool1.txt"

select /*csv*/ * from employees;

spool "\path\to\spool2.txt"

select /*csv*/ * from locations;

spool off;

您需要将其作为脚本运行(F5,或 SQL 工作表上方命令栏上的第二个按钮)。您可能还想探索一些格式化选项set命令,尽管其中一些不会转换为 SQL Developer。

既然您在标题中提到了 CSV,我已经包含了一个SQL Developer 特定的提示,可以为您进行格式化。

一个缺点是 SQL Developer将查询包含在假脱机文件中,您可以通过将命令和查询放在脚本文件中然后将其作为脚本运行来避免这种情况。

于 2013-10-18T11:40:14.827 回答
4

单击网格使其具有焦点。

Ctrl+结束

这将强制其余记录返回到网格中。

所有功劳归于 http://www.thatjeffsmith.com/archive/2012/03/how-to-export-sql-developer-query-results-without-re-running-the-query/

于 2014-03-10T14:58:30.733 回答
2

在 Ctrl+End 之后,您可以执行 Ctrl+A 以选择缓冲区中的所有内容,然后粘贴到 Excel 中。Excel 甚至将每个 Oracle 列放入其自己的列中,而不是将整行压缩为一列。好的..

于 2014-08-29T21:23:35.407 回答