Как получить JDBC результат в качестве объекта при вызове из Python - PullRequest
0 голосов
/ 24 мая 2019

Мой существующий коннектор jdbc получает результаты от stdout и, следовательно, получает результат в одной строке.что делает результаты для анализа.

Можете ли вы помочь мне предложить способ получить результат в объекте.

from subprocess import Popen, PIPE, STDOUT

class connector:
    def execute(self, query):
        oracle_jdbc_jar = self.oracle_jdbc_jar
        oracle_jdbc_url = self.oracle_jdbc_url
        oracle_password = self.oracle_password
        oracle_user = self.oracle_user

        p = Popen(['java', '-jar', oracle_jdbc_jar ,'-oracle_jdbc_url', oracle_jdbc_url, '-oracle_user' ,oracle_user,'-oracle_password',oracle_password,'-query',query ], stdout=PIPE, stderr=STDOUT)
        stdout, stderr = p.communicate() 
        print stdout
        if "return code: 0" not in stdout:        
            raise RuntimeError()

        for line in stdout.splitlines():
            if 'Results:' in line:
                return line.split('Results:')[1].strip()

        return None
...