使用 wso2,DSS 版本 3.01,我试图有一个可以是可选参数的输入参数。用户可以说,给我这个特定代码的所有信息,或者如果用户没有指定任何代码,我想提供所有数据行。你能帮我吗?
您还可以执行以下操作,而不是为每个可选参数创建查询:
<query id="selectEmployees" useConfig="default">
<sql>select * from Employees where (:employeeNumber is null or employeeNumber = :employeeNumber)</sql>
<result element="employees" rowName="employee">
<element column="lastName" name="last-name" xsdType="string"/>
<element column="firstName" name="first-name" xsdType="string"/>
<element column="email" name="email" xsdType="string"/>
<element column="salary" name="salary" xsdType="double"/>
</result>
<param defaultValue="#{NULL}" name="employeeNumber" ordinal="1" paramType="SCALAR" sqlType="INTEGER" type="IN"/>
</query>
<operation name="getEmployees">
<call-query href="selectEmployees">
<with-param name="employeeNumber" query-param="employeeNumber"/>
</call-query>
</operation>
现在您可以使用“employeeNumber”调用“getEmployees”并获取特定员工,
或者您可以调用不带“employeeNumber”的“getEmployees”并获取所有员工。
(不使用“employeeNumber”进行调用的方法是省略“employeeNumber”标签,或使用“xsi:nil="true"”。)
显然,您不能以这种方式查询值“null”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)