使用SQL Developer运行查询效果很好,但如果我不是先运行查询,然后右键单击结果集并通过导出到csv例程,我会节省大量时间。
我想知道它是否是SQL Developer中的一种方式: 1)编写查询,然后选择将查询结果导出到磁盘。 2)编写一个包含多个查询的队列,每个查询都将结果写入磁盘。
答案 0 :(得分:38)
您可以使用spool
command(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工作表上方命令栏上的第二个按钮)。您可能还想探索一些formatting options和set
command,但其中一些不会转换为SQL Developer。
由于您在标题中提到了CSV,因此我添加了SQL Developer-specific hint来为您执行格式化。
但缺点是SQL Developer includes the query in the spool file,您可以通过在脚本文件中使用命令和查询来避免这种情况,然后将其作为脚本运行。
答案 1 :(得分:3)
点击网格,使其具有焦点。
CTRL + END
这将强制其余记录重新进入网格。
答案 2 :(得分:2)
在Ctrl + End之后,您可以执行Ctrl + A选择缓冲区中的所有内容,然后粘贴到Excel中。 Excel甚至将每个Oracle列放入其自己的列中,而不是将整行压缩到一列中。不错..