SOAP API / SQL 错误"ORA 00904 invalid Identifier"



我有以下问题:

我需要获取oracle数据库表的几列以在.php页面上显示信息。为此,我使用了一个 SOAP-API,它可以完美地与任何其他表配合使用,只是不适用于此表。

这是我用于所有这些查询的代码:

$setSearchObjectsIn = new SearchObjectsInType();
    $setSearchObjectsIn->sessionId = (String) $sessionId;   
    $setSearchObjectsIn->table = (String) 'STFCFG_DD_VALUE';    
    $setSearchObjectsIn->caseSensitive = (String) 'false';  
    $setSearchObjectsIn->limitedResult = (String) 'false';  
    $setSearchObjectsIn->restrictions[0]['attributeName']= (String) 'STFCFG_DD_VALUE.DDID';
    $setSearchObjectsIn->restrictions[0]['restriction']['operator'] = (String) '=';
    $setSearchObjectsIn->restrictions[0]['restriction']['value'] = (String) $ddid;
    $setSearchObjectsIn->resultColumns[0] = (String) 'STFCFG_DD_VALUE.DD_VALUE';
    $setSearchObjectsIn->resultColumns[1] = (String) 'STFCFG_DD_VALUE.CATALOG_NAME';
    $setSearchObjectsIn->resultColumns[2] = (String) 'STFCFG_DD_VALUE.MSG_ID';      
    $client = new SoapClient((String) $instance.'/axis/services/GenericApiWS?wsdl');    
    $result = $client->searchObjects($setSearchObjectsIn);

这是我在这个特殊表中得到的错误:

ORA-00904: "MAN_ID": ungültiger Bezeichner

我也尝试使用 SoapUI 启动此查询,结果完全相同。事实上,我的代码中没有像"MAN_ID"这样的内容让我感到疑惑,因为错误看起来像我会查询这样命名的列,而我显然不会这样做。 (请求的表中也没有"MAN_ID"列,所以我不知道这是从哪里来的(

希望你能帮助我

我会尝试在 SOAP 服务器代码中查找MAN_ID - 错误可能是服务器返回的内容,并且它可能正在隐式查找该列。错误消息肯定是由 Oracle 生成的,因此请搜索查询到达那里的方式,如果可能,请查看执行的查询。

最新更新