【问题标题】:how to save oracle SQL queries automatically when a query is executed?执行查询时如何自动保存oracle SQL查询?
【发布时间】:2012-07-13 00:00:27
【问题描述】:

我想保存用户正在执行的 SQL/PLSQL 查询。

我使用下面的,并且必须在语句末尾使用append,并在开头使用保存。但是,在执行查询之后一直执行保存语句是一件很头疼的事情。

我想知道是否有任何命令可以自动将查询保存到文件中。

    SQL> save C:\savesueryfolder\first.sql;
    SQL> select * from emp;
    SQL> save C:\savesueryfolder\first.sql append;

【问题讨论】:

  • 试试spool 命令http://ss64.com/ora/syntax-sqlplus.html
  • 每次保存还需要执行spool查询。但是朋友我不想每次都执行假脱机/保存查询。这里有任何线索...
  • A.B.Cade 是正确的,只需在会话中发出 spool 一次,它将保存所有查询和结果。请记住,sql*plus 不会自动刷新文件,因此在您执行“spool off”或假脱机到不同的文件名之前,您不会在文件中看到查询/结果。但当然,任何其他假脱机命令都会破坏这种方法,因此这更像是一种解决方法而不是实际解决方案。
  • 感谢您宝贵的时间来帮助我。 A.B cade 和 GWu

标签: oracle save


【解决方案1】:

尝试使用 SPOOL 命令。 SPOOL 命令将输出保存到文件中。您可以应用以下步骤 -

第 1 步:

提供要假脱机输出的位置。

sql> SPOOL C:\Users\Anant\Desktop\temp.text

(或 temp.doc 取决于您要保存的扩展名。我建议使用 for.doc)

如果temp.doc/temp.txt 已经可用,那么它只会覆盖文件,因此请务必尝试创建新文件。

第 2 步:

执行查询。

sql> SELECT * FROM EMP;

您可以执行任意数量的查询。

第 3 步:

关闭阀芯。

sql>SPOOL OFF 

转到指定的 位置并检查文件。

【讨论】:

    猜你喜欢
    • 2014-04-08
    • 1970-01-01
    • 2014-10-11
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-30
    相关资源
    最近更新 更多