【发布时间】:2014-06-27 18:13:13
【问题描述】:
我正在使用 wso2esb 4.7.0 和 wso2dss 3.1.0 并希望从表中选择一些记录..因为我在 dss 中写入了 dbs 文件,它的配置如下:
<query id="Capp_select_emercontactid" useConfig="default">
<sql>select userid,mailid,phonenumber from muser where phonenumber = ? or mailid = ?</sql>
<result element="Entries" rowName="Entry">
<element column="userid" name="userid" xsdType="string"/>
<element column="mailid" name="mailid" xsdType="string"/>
<element column="phonenumber" name="phonenumber" xsdType="string"/>
</result>
<param name="phonenumber" ordinal="1" sqlType="STRING"/>
<param name="mailid" ordinal="2" sqlType="STRING"/>
</query>
<operation disableStreaming="true" name="Capp_select_emercontactid_op">
<call-query href="Capp_select_emercontactid">
<with-param name="phonenumber" query-param="phonenumber"/>
<with-param name="mailid" query-param="mailid"/>
</call-query>
</operation>
我已在尝试此服务部分中尝试过此操作。当我将两个条件都设置为 true 时,它正在工作但是当我设置单个条件而另一个条件为空白时,它会显示表中存在的所有记录
<p:Capp_select_emercontactid_op xmlns:p="http://ws.wso2.org/dataservice">
**<p:phonenumber></p:phonenumber>**
<p:mailid>youtility</p:mailid>
</p:Capp_select_emercontactid_op>
但是,如果我在电话号码处添加空格,它就可以正常工作,如下所示..
<p:Capp_select_emercontactid_op xmlns:p="http://ws.wso2.org/dataservice">
**<p:phonenumber> </p:phonenumber>**
<p:mailid>youtility</p:mailid>
</p:Capp_select_emercontactid_op>
为什么会这样? 我如何在 esb 中处理这个空间?请参阅以下链接以获取 db 和查询描述: Select Query to check both or either or condition
【问题讨论】:
标签: sql postgresql wso2 wso2esb wso2dss