Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ORA-00933:SQL命令未以psycopg2正确结束_Python_Sql_Database_Oracle_Psycopg2 - Fatal编程技术网

Python ORA-00933:SQL命令未以psycopg2正确结束

Python ORA-00933:SQL命令未以psycopg2正确结束,python,sql,database,oracle,psycopg2,Python,Sql,Database,Oracle,Psycopg2,所以我一直在尝试使用psycopg2从python运行这个查询,但它给了我一个错误 ORA-00933:SQL命令未正确结束 而如果我尝试在oracle DB中运行查询,它会顺利通过 它所做的只是从一个表中获取计数,并将其与另一个表的计数进行比较,然后返回PASS或FAIL 如果有人能帮我找出原因,我将不胜感激 问题是: 'WITH QA AS ( SELECT COUNT(*) C FROM QAAUTO.FactInternetSales) ,DEV AS (SELECT COUNT (*

所以我一直在尝试使用psycopg2从python运行这个查询,但它给了我一个错误 ORA-00933:SQL命令未正确结束 而如果我尝试在oracle DB中运行查询,它会顺利通过

它所做的只是从一个表中获取计数,并将其与另一个表的计数进行比较,然后返回PASS或FAIL

如果有人能帮我找出原因,我将不胜感激

问题是:

'WITH QA AS ( SELECT COUNT(*) C FROM QAAUTO.FactInternetSales) 
,DEV AS (SELECT COUNT (*) C FROM qaauto.LoyaltyProgramA) 
SELECT "Records count" AS TEST_NAME 
   ,QA.C AS QA_RECORDS 
   ,DEV.C AS DEV_RECORDS 
   ,CASE WHEN DEV.C > 0 AND DEV.C = QA.C THEN "PASS" ELSE "FAIL" END AS RESULT
FROM QA,DEV ; '
运行它的python代码:

def generate_results(self, driver):
    for tce in self.testCaseExecutors:
        testExecutorId = tce["testcaseexecutorid"]
        script = tce["script"]
        failOutputScript = tce["failoutputscript"]

        result = run_Script(driver, script)
        output = None

        if result == 'PASS':
            stateid = 'PASS'
        elif result == 'FAIL':
            stateid = 'FAIL'
            

        tcResult = (testExecutorId, stateid, output)
        self.testCaseResults.append(tcResult)

 def run_Script(driver, script):
    result = driver.fetchall(script, {})
    return result[0]

在我的例子中,脚本包含上面发布的查询

显然是查询末尾的分号导致了错误。

您没有显示实际执行查询的代码。如果您在psycopg2will的上下文之外给出工作查询,任何人都无法提供太多帮助,这里:
来自QA,DEV;'有什么好处吗?@Littlefoot facepalm,你说得对。不管出于什么原因,这都是问题的根源。谢谢你,伙计!不客气。