问题描述
我在Oracle上有一个计划的作业,它会在delete语句之前和之后进行计数,并将结果spool到Oracle服务器上的日志文件中。作业是类型SQL_SCRIPT。当我执行作业时,即使我在脚本中指定了SET TERM OFF ECHO OFF,SQL语句也包含在假脱机文件中。
我的问题是,当通过Oracle作业调度程序执行时,如何防止实际的SQL语句包含在假脱机文件中?
我尝试了各种选择,并搜索了数百篇文章,但在这个特定问题上没有找到任何东西。
谢谢
井架
我的问题是,当通过Oracle作业调度程序执行时,如何防止实际的SQL语句包含在假脱机文件中?
我尝试了各种选择,并搜索了数百篇文章,但在这个特定问题上没有找到任何东西。
谢谢
井架
专家解答
我已经在我自己的12c和19c系统上复制了这个,即 * most * SQL命令 (列格式,页面大小,提示等) 都工作正常,但termout/echo似乎被忽略。
我在内部询问这是一个错误还是已知的限制,但我认为目前,解决方法是使用EXTERNAL_SCRIPT类型。
因此就像
最终会沿着
不理想我知道:-(
我在内部询问这是一个错误还是已知的限制,但我认为目前,解决方法是使用EXTERNAL_SCRIPT类型。
因此就像
my_script := 'conn user/pass@db set termout off set echo off spool ... select object_id, object_name from all_objects; spool off';
最终会沿着
my_script := ' #!/bin/bash export PATH=... export ORACLE_HOME=... cat </tmp/myscript.sql set termout off set echo off spool ... select object_id, object_name from all_objects; spool off exit EOF sqlplus -s user/pass@db @/tmp/myscript.sql';
不理想我知道:-(
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




