oracle 从在sqlplus中执行的external .sql将日志添加到日志文件

zaqlnxep  于 2023-11-17  发布在  Oracle
关注(0)|答案(1)|浏览(109)

我有一个test.sh脚本,其中包含以下代码:

LOG=output.log

sqlplus -s user/pwd@db << EOF > ${LOG}
    WHENEVER OSERROR EXIT 9;
    WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK;

    @testsqlfile
EOF

字符串
testsqlfile.sql文件:

SET SERVEROUTPUT ON

EXEC DBMS_OUTPUT.PUT_LINE('TEST');


我无法在testsqlfile.sql中打印要添加到output.log文件中的日志。
如果我把SETserveroutputEXEC DBMS_OUTPUT.PUT_LINE('TEST');直接添加到test.sh脚本中,它工作得很好。但是我不能把它从外部的testsqlfile.sql中添加到output.log文件中,如上所述。
据我所知,它应该工作,但它没有。
谢谢.

ux6nzvsh

ux6nzvsh1#

由于没有提供答案,我只是直接在我的bash中执行sql脚本。

sqlplus -s user/pwd@db << EOF > ${LOG}
WHENEVER OSERROR EXIT 9;
WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK;

Direct query
EOF

字符串
谢谢

相关问题