【发布时间】:2018-01-18 10:51:44
【问题描述】:
我有以下问题:
我需要获取 oracle db 表的几列以在 .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”列,所以我不知道这是从哪里来的)
希望你能帮到我
【问题讨论】:
-
也许你有一个与该字段一起使用的触发器
-
... 或其他一些存储的 procedure 或 function。
-
谢谢。我使用 SQLDeveloper 在此表中搜索了不同的设置,但似乎完全没有区别。没有触发器或类似的东西。