16

我有一个select产生大输出的查询,我想在 sqldeveloper 中执行它,并将所有结果放入一个文件中。

Sql-developer 不允许大于 5000 行的结果,我有 100 000 行要获取...

我知道我可以使用 SQL+,但假设我想在 sqldeveloper 中执行此操作。

4

4 回答 4

22

不要使用运行脚本 (F5),而是使用运行语句 (Ctrl+Enter)。Run Statement 一次获取 50 条记录并在您滚动查看结果时显示它们……但您可以通过右键单击结果并选择Export Data -> csv/html/etc将整个输出保存到文件中。

我是一个新手 SQLDeveloper 用户,所以如果有更好的方法请告诉我。

于 2010-05-14T19:51:03.663 回答
9

这个问题真的很老,但是发布这个问题可能会对遇到类似问题的人有所帮助。

您可以将查询存储在 query.sql 文件中并将其作为脚本运行。这是一个示例 query.sql:

spool "C:\path\query_result.txt";
select * from my_table;
spool off;

在 oracle sql developer 中,您可以像这样运行此脚本,您应该能够在query_result.txt文件中获得结果。

@"C:\Path\to\script.sql"
于 2017-01-16T13:14:54.900 回答
5

是的,您可以通过更改设置工具->首选项->数据库->工作表->在脚本中打印的最大行数来增加工作表的大小(取决于您)。

于 2014-09-03T14:34:23.697 回答
0

如果您只想要单个语句的输出,Mike G 答案将起作用。

但是,如果您希望输出包含多个语句、SQL*Plus 报告和一些其他输出格式的整个 sql 脚本,您可以使用与spool在 SQL*Plus 中相同的方式使用该命令。

于 2016-10-24T16:38:31.150 回答