在python子流程方法中捕获isql的错误消息
我正在使用python子进程执行isql命令。我正在使用下面的代码捕获输出和错误消息在python子流程方法中捕获isql的错误消息,python,subprocess,isql,Python,Subprocess,Isql,我正在使用python子进程执行isql命令。我正在使用下面的代码捕获输出和错误消息 command = "./isql -S "+mdbserver+" -U "+muserid+" -P "+mpassword+" -D "+mdatabase+" -s '"+self.Delimiter+"' -w 99999 <<EOF\nSET NOCOUNT ON\n"+Query+"\ngo\nEOF" output, err = subprocess.Popen(command,st
command = "./isql -S "+mdbserver+" -U "+muserid+" -P "+mpassword+" -D "+mdatabase+" -s '"+self.Delimiter+"' -w 99999 <<EOF\nSET NOCOUNT ON\n"+Query+"\ngo\nEOF"
output, err = subprocess.Popen(command,stdout=subprocess.PIPE,shell=True,cwd=sybase_bin)
command=“./isql-S”+mdbserver+“-U”+muserid+“-P”+mpassword+“-D”+mdatabase+“-S”+self.Delimiter+”-w 9999使用
stderr
参数:
proc = subprocess.Popen(
command,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
shell=True,
cwd=sybase_bin
)
然后:
请参阅。我仍然在输出变量中遇到错误。我需要捕获错误变量中的错误。在这种情况下,可能是通过标准输出报告了错误。您可能需要检查isql的文档和命令行开关。我在-isql命令中添加了--retserverror。现在我在错误变量中得到了错误代码。
output, error = proc.communicate()