从批处理文件运行SQLPlus脚本,并在控制台上输出

我正在运行一个调用sql脚本的批处理文件。 sql脚本完成工作,然后将完成的工作打印到日志文件中。所做的工作与更改数据库中的许多记录有关,日志文件包括为数据库中更改的每个记录打印密钥。所有这些工作。我只想打印出用户更改到控制台的记录数。如果我将术语设置为ON(或至少不将其关闭),则所有日志文件输出都将显示在屏幕上。否则,除批处理文件中回显的内容外,不会显示任何其他内容。如何仅将sql脚本中的数字输出到控制台?

批处理文件调用与此类似:

sqlplus -S %DB_LOGIN%/%DB_PWD%@%DB_SRVR% as sysdba @sql\sqlscript.sql %record_id% %timestamp% @COUNT output
echo %@COUNT%

但是回显计数不会显示计数。

sqlscript设置:

SET VERIFY OFF
SET LInes 1000
SET FEEDBACK OFF
SET SUFFIX text
SET PAGES 0
SET ECHO ON
SET TERM OFF
SET SERVEROUTPUT ON SIZE UNLIMITED
SET TRIMS ON
Spool DB_Records_&1-&2..log

声明变量。

获取需要更改的记录数。

Commits.

DBMS_OUTPUT.PUT_LINE('Total records changed = ' || count);

END;  
/

Spool Off

输出行会将输出添加到.log,但是如何使该行仅显示在控制台上,或将其输出到批处理文件以显示?

qs1012 回答:从批处理文件运行SQLPlus脚本,并在控制台上输出

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2909978.html

大家都在问