繁体   English   中英

Oracle SQLPlus:如何显示sqlplus命令的输出而无需先发出spool off命令?

[英]Oracle SQLPlus: How to display the output of a sqlplus command without having to first issue the spool off command?

有没有办法显示sqlplus命令的输出而不必先发出spool off命令?

我正在将sqlplus会话的结果假脱机到文件,同时拖尾文件。 原因是对于具有很长行的表格,格式更容易从文件中查看。 问题是每次在sqlplus中运行命令时都要看输出我必须发出假脱机命令。

我可以配置sqlplus,以便在我发出spool命令之后,所有输出都可以立即在文件上查看。

(格式化行显示在屏幕上的方式不是一种选择。)

谢谢

SPOOL实际上用于创建SQL * Plus输出文件,用于任何目的:记录,输入到另一个进程等。没有设施可以在机上查看其输出。

有许多方法可以解决这个特殊问题,但最简单的方法是使用包含数据浏览器的IDE,从而避免了拖尾文件的需要。 市场上有一些产品,包括Quest的TOADAllround Automation的PL / SQL Developer ,但如果您不想购买许可费,那么您应该看看Oracle自己的(免费)SQL Developer

如果您的问题是您无法打开输出文件(因为假脱机进程有锁定),请尝试将文件输出复制到另一个文件并打开该文件。

因为听起来你真正的问题是SQLPlus中输出的格式化 - 你可以使你的SQLPlus窗口更宽并且设置LINESIZEE所以输出在SQLPlus中看起来更好吗? 然后你可能根本不需要假脱机。

如果您正在假脱机多个语句的结果,则可以关闭假脱机,然后在每个语句之间重新打开。 重新打开假脱机时,添加append关键字,使其在同一个文件中继续,而不是覆盖它。

如果要在假脱机文件中查看一个查询的结果,可以将查询分解为多个返回特定数据范围的查询。 这会更慢,但您可以循环假脱机以获得更快的反馈。

我试图添加一个评论,但由于某种原因,它没有保存,所以生病尝试“回答你的问题”选项:)

我确实使用SQLDeveloper,但有些情况下我必须使用sqlplus,其中SQLDeveloper不可用,然后我坚持使用普通的旧sqlplus。

在其他情况下我会使用sqlplus而不是sqldeveloper,因为我需要花费1/2分钟才能找到我在sqlplus中寻找的内容,而不是几分钟内使用SQLDeveloper,因为它需要花费很长时间才能加载。

我已经检查了输出被刷新之前所花费的时间,看起来它在一定数量的行之后将其刷新。 有没有办法减少缓冲区,以便更快地冲洗?

打开文件没有问题,即使文件打开我也看不到输出,除非我发出“spool off”命令或输出有几百行。 我正在使用一个名为baretail( http://www.baretail.com )的免费程序来尾随Windows上的假脱机文件。

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM