当来自 python 的 运行 sql 脚本时,如何仅抑制 SQL*Plus 横幅消息

How to only suppress SQL*Plus banner messages when running sql script from python

我已经从 Python 执行 Oracle SQL 脚本很长时间了,但从来没有找到一种方法来只抑制横幅以及 SQL*Plus 的连接和断开消息.

SQL*Plus 本身使用如下代码调用:

session = subprocess.Popen(
    args=['sqlplus', '-S', '-L', username+'/'+password+'@'+server), "@{}".format(script)],
    stdin=subprocess.PIPE,
    stdout=sys.stdout,
    stderr=subprocess.STDOUT,
    )

try:
    session.communicate(timeout=timeout)
except subprocess.TimeoutExpired:
    session.kill()
    session.communicate()
    
code = session.returncode

我知道 SQLPlus 有 -S 静默选项,这会抑制横幅,但是当使用静默选项时 SQLPlus 还抑制(甚至在假脱机文件中)命令的回显。

是否有人找到了一种方法来抑制 SQL*Plus 横幅以及连接和断开消息?

这似乎是 SQL 中的错误*加上:错误 17328625