如何在Oracle SQL Developer中将查询结果导出到csv?

3wabscal  于 2023-03-22  发布在  Oracle
关注(0)|答案(6)|浏览(205)

我正在使用Oracle SQL Developer 3.0。试图弄清楚如何将查询结果导出到文本文件(最好是CSV)。右键单击查询结果窗口并没有给予我任何导出选项。

oxosxuxt

oxosxuxt1#

我使用的版本

2012年5月5日更新

Jeff Smith显示了blogged,我认为这是从SQL Developer获取CSV输出的上级方法。Jeff的方法如下所示:

方法1

将注解/*csv*/添加到SQL查询中,并将查询作为脚本运行(使用F5或工作表工具栏上的第二个执行按钮)

select /*csv*/ *
from emp;

就是这样。
您也可以使用spool将其自动保存为CSV文件:

spool "/path/to/file.csv";
select /*csv*/ *
from emp;
spool off;

只是一定要“运行脚本”或按F5。

方法二
运行查询

右键选择unload。
更新,Sql Developer 3.0.04版本中unload改为export感谢Janis Peisenieks指出

SQL Developer版本3.0.04的修订屏幕截图

从格式下拉列表中选择CSV

然后按照屏幕上的其他说明进行操作。

bwitn5fc

bwitn5fc2#

不完全是“导出”,但您可以选择要导出的网格中的行(或Ctrl-A选择所有行),然后使用Ctrl-C进行复制。
默认值是制表符分隔的。您可以将其粘贴到Excel或其他编辑器中,并随意操作分隔符。
此外,如果使用Ctrl-Shift-C而不是Ctrl-C,则还将复制列标题。

pcrecxhr

pcrecxhr3#

仅供参考,您可以将/*csv*/替换为其他格式,包括/*xml*//*html*/。例如,select /*xml*/ * from emp将返回带有查询结果的xml文档。我在寻找从查询返回xml的简单方法时遇到了这篇文章。

xmd2e60i

xmd2e60i4#

告诉你如果有人遇到麻烦,CSV时间戳导出中有一个错误,我只是花了几个小时来解决。我需要导出的一些字段是时间戳类型。即使在当前版本中,它也显示CSV导出选项(3.0.04截至这篇文章)未能把分组符号周围的时间戳。非常令人沮丧,因为空格的时间戳打破了我的进口。我发现的最好的解决方法是在所有时间戳上使用TO_CHAR()编写查询,这会产生正确的输出,尽管需要多做一些工作。我希望这可以节省一些时间,或者让Oracle在下一个版本中保持领先。

ojsjcaue

ojsjcaue5#

从sql developer导出到本地系统。

Path : C:\Source_Table_Extract\des_loan_due_dtls_src_boaf.csv

    SPOOL "Path where you want to save the file"
    SELECT /*csv*/ * FROM TABLE_NAME;
roqulrg3

roqulrg36#

CSV导出不会转义您的数据。请注意以\结尾的字符串,因为结果\"看起来像转义的"而不是\。然后,您将有错误的"编号,并且整行都已损坏。

相关问题