Python中对Oracle SQL的调用不起作用

Python中对Oracle SQL的调用不起作用,python,subprocess,Python,Subprocess,我是Python初学者,我正在尝试从Python程序访问oracle DB。我能够得到以下代码的输出。但是,我需要与输出一起运行的SQL查询。我只得到输出。我试过“开启回声”,但它不起作用。请帮帮我 !/usr/bin/python 进口 从子流程导入Popen、PIPE 导入操作系统 导入系统 sql1='set echo ON\n从v$数据库中选择名称;' sqlplus=Popen[sqlplus,-S,/,as,sysdba],stdout=PIPE,stdin=PIPE sqlplus

我是Python初学者,我正在尝试从Python程序访问oracle DB。我能够得到以下代码的输出。但是,我需要与输出一起运行的SQL查询。我只得到输出。我试过“开启回声”,但它不起作用。请帮帮我

!/usr/bin/python 进口 从子流程导入Popen、PIPE 导入操作系统 导入系统 sql1='set echo ON\n从v$数据库中选择名称;' sqlplus=Popen[sqlplus,-S,/,as,sysdba],stdout=PIPE,stdin=PIPE sqlplus.stdin.writesql1; out,err=sqlplus.communicate 打印出来 电流输出:

=================
Exexution Details:
===========
 ./test_db.py
NAME
---------
testdb

我希望SQL查询也与输出一起打印,如下所示:

它在使用SQL文件而不是直接命令后得到修复

sqlplus=Popen[sqlplus,-S,/,as,sysdba,@file.sql],stdout=PIPE,stdin=PIPE