通常在DB2中,如果我想执行db脚本并将执行结果输出到日志文件,我将执行以下操作:
db2 -tvf x.sql > x.log
因此,我可以阅读x.log来检查我的脚本是否正确执行。
Oracle db怎么样?
我知道脚本运行如下:
SQL>@x.sql
但是我怎样才能像在DB2中那样输出执行结果?
请告知。
答案 0 :(得分:0)
使用SPOOL
SPOOL filename.txt
@x.sql
SPOOL OFF
将查询结果存储在文件中,或者可选择将文件发送到打印机
您可以使用的其他选项:
CRE [ATE]
创建一个具有指定名称的新文件。
REP [LACE]
替换现有文件的内容。如果该文件不存在, REPLACE创建文件。这是默认行为。
APP [END]
将缓冲区的内容添加到指定文件的末尾。
OFF
停止假脱机。
OUT
停止假脱机并将文件发送到您计算机的标准 (默认)打印机。某些操作不提供此选项 系统
答案 1 :(得分:0)
看起来像FAQ,尝试使用sqlplus的shell重定向:
sqlplus your_connect_string_here @x.sql 1>x.out 2>&1
还要考虑在脚本内部使用set termout on
和spool
命令来进一步调整行为。有关所有详细信息,请参阅Oracle sqlplus文档。